perm filename SUDS.RPH[UP,DOC]28 blob sn#657456 filedate 1982-05-05 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00035 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	Introduction:
C00005 00003	CHARACTER SET:
C00008 00004	WRITEUP FOR THE STANFORD DRAWING SYSTEM.
C00013 00005	NOW FOR THE COMMANDS YOU CAN GIVE ANYTIME:
C00023 00006	λX	TYPES "WELL?" TO WHICH YOU MAY TYPE ANY OF THE
C00048 00007
C00053 00008
C00070 00009
C00072 00010	POINT MODE:
C00075 00011
C00080 00012
C00085 00013
C00088 00014
C00093 00015	BODY MODE:
C00103 00016	BODY TEXT/PROPERTY MODE:
C00106 00017	SET MODE:
C00109 00018	LINE MODE:
C00111 00019	ALTER MODE:
C00116 00020	EDIT MODE:
C00121 00021	TEXT/PROPERTY MODE COMMANDS:
C00128 00022	MACRO'S:
C00137 00023	HOW TO DO IT -- PC CARDS
C00139 00024	MORE PC CARDS -- PCP
C00154 00025	MORE PC CARDS -- AFTER PCP
C00158 00026	RUNNING WL:	How to run the wire lister
C00168 00027	More WL:	EXTEND MODE COMMANDS
C00185 00028	More WL:	DIP SUB-MODE
C00194 00029	More WL:	How to interpret WL-generated files
C00200 00030	Even more WL:	Defining new diptypes (or modifying old)
C00202 00031	RUNNING MAGGOT
C00203 00032	RUNNING PDRILL
C00204 00033	RUNNING FR80
C00205 00034	HOW TO RUN REF
C00207 00035	MISCELANEOUS
C00211 ENDMK
C⊗;
Introduction:

Latest revision of this document: 28 JUN 74

This document describes the STANFORD UNIVERSITY DESIGN SYSTEM, originally
developed at the Stanford University Artificial Intelligence Lab
by Dick Helliwell.  It has been exported to several sites, as
described below:

Stanford Artificial Intelligence Lab
	Maintained by:	JEFF RUBIN
	Mail to:	JBR @ SU-AI (RUBIN)
	Documentation:	SUDS.RPH[UP,DOC]
	Source on:	[D,DRW], [WL,DRW], [PLT,DRW]
	Object on:	SYS:

M.I.T. Artificial Intelligence Lab
	Documentation:	DRAW; W >
	Source on:	DRAW;
	Object on:	SYS:

Carnegie-Mellon University
	Maintained by:	Rick Gumpertz
	Mail to:	RG02 @ CMU-10B
	Documentation:	W.CMD[E130DP00]/B (LOOK comand file)
	Source on:	[E130DP00], [E130RG02] (both SPCH: & DSKC:)
	Object on:	[E130DP00]

Digital Equipment Corporation
	Maintained by:	DICK HELLIWELL
	Mail to:	Digital Equipment Corporation
			200 FOREST ST.
			MARLBORO, MASS. 01752
	Documentation:	<10-ENGINEERING-LIBARY>SUDS.TXT
	Source on:	<DRAW>, <WIRELISTER>, <PLOT>, <PC>
	Object on:	<10-ENGINEERING-LIBRARY>
CHARACTER SET:

THE FOLLOWING CHART SHOWS THE SPECIAL GRAPHIC CHARACTERS AVAILABLE
ON THE STANFORD KEYBOARD AND WHAT YOU MUST TYPE TO OBTAIN THEM ON A
TELETYPE KEYBOARD. CERTAIN CHARACTERS REQUIRE THE USE OF THE ";L" MACRO
COMMAND. FOR THESE CHARACTERS, YOU MUST TYPE "α;L" FOLLOWED BY THE
NUMBER GIVEN IN THE CHART FOLLOWED BY <CR>.
OBSERVE THE MINUS SIGN CAREFULLY.

GRAPHIC		KEYSTROKE	;L	OCTAL VALUE
---------------------------------------------------
DOWN ARROW	↑A		-63	001
ALPHA		↑B		-62	002
BETA		NONE		-61	003
LOGICAL AND	↑D		-60	004
LOGICAL NOT	↑E		-59	005
EPSILON		↑F		-58	006
PI		↑G (BELL)	-57	007
LAMBDA		↑H (BACKSPACE)	-56	010
GAMMA		↑I (TAB)	-55	011
INTEGRATION	↑K (VERT TAB)	-53	013
PLUS/MINUS	↑L (FORM FEED)	-52	014
INFINITY	↑N		-50	016
SMALL DELTA	NONE		-49	017
LEFT HORSESHOE	↑P		-48	020
RIGHT HORSESHOE	↑Q		-47	021
DOWN HORSESHOE	↑R		-46	022
UP HORSESHOE	↑S		-45	023
FOR ALL SIGN	↑T		-44	024
THERE EXISTS	NONE		-43	025
MU (MICRO)	↑V		-42	026
DOUBLE ARROW	↑W (SEE NOTE)	-41	027
OMEGA (OHMS)	↑X		-40	030
RIGHT ARROW	↑Y		-39	031
TILDA		↑Z		-38	032
NOT EQUAL	NONE		-37	033
LESS OR EQUAL	↑\		-36	034
GREATER OR EQ	↑]		-35	035
IDENTITY	↑↑		-34	036
LOGICAL OR	↑←		-33	037
VERTICAL BAR	NONE		60	174
CIRCUMFLEX	NONE		61	175
RIGHT BRACE	NONE		62	176

NOTE: ↔ (DOUBLE ARROW) MEANS CARRIAGE RETURN LINE FEED IN TEXT.

NOTE: ↑R AND ↑T MAY NOT BE TYPED TO THE DRAWING PROGRAM
	AND ↑W MAY NOT BE TYPED IN LINE MODE.
WRITEUP FOR THE STANFORD DRAWING SYSTEM.

THE CHARACTERS "α", "β", "ε", AND "λ" STAND FOR <ctrl>, <meta>,
<ctrl><meta>, AND <don't care> RESPECTIVELY (NOT AT DEC). AT DEC THEY
STAND FOR 1, 2, AND 3 <ALT>'S REPECTIVELY. "α", "β", AND "ε"
ARE ALWAYS INTERPRETED BY THE SCANNER AS THESE THINGS! FOR DEC, THE
TERM "ALTMODE" WILL BE USED TO MEAN 4 <ALT>'S.
<EXISTS> WILL BE USED IN THIS WRITEUP TO MEAN THE EXISTS CHARACTER.
AT DEC IT IS ↑E, ELSEWHERE IT IS ∃.

THE LETTER "D" PRECEDING ANY DESCRIPTION MEANS THIS IS FOR THE LOGIC
DRAWING PROGRAM ONLY, "PC" MEANS PC CARD PROGRAM ONLY.
"L" MEANS THIS IS A FEATURE OF THE LAYOUT VERSION ONLY.
"R" MEANS THIS IS A FEATURE OF THE ROUTING VERSION ONLY.
"DEC" MEANS AT DEC.
"NODEC" MEANS ELSEWHERE.
"STANFO" MEANS STANFORD ONLY.
"NOSTANFO" MEANS ELSEWHERE.
"U" MEANS CONDITIONAL UNDER "UML" ASSEMBLY SWITCH.

HERE ARE SOME MONITOR LEVEL COMMANDS:

REE		ASKS "RESTART?". IF YOU TYPE "Y<CR>", WHATEVER YOU WERE
		DOING WILL BE ABORTED AND THE PROGRAM RESTARTED IN THE MAIN
		COMMAND LOOP. THE DRAWING IS NOT FLUSHED. EXTREME CAUTION
		SHOULD BE USED WITH THIS COMMAND BECAUSE ↑C TO THE PROGRAM
		CAN LEAVE THE DATA STRUCTURE IN AN INCONSISTENT STATE.
		IN GENERAL IF THE PROGRAM IS IN INPUT WAIT, OR UPDATING
		THE DISPLAY, IT IS SAFE.
		IF YOU DON'T TYPE "Y<CR>", YOU WILL BE ASKED A SECOND
		QUESTION. "FLUSH MACROS?". IF YOU TYPE "Y<CR>" TO THIS
		ANY MACROS IN PROGRESS WILL BE TERMINATED AS SOON AS POSSIBLE.
		IN ANY CASE THE PROGRAM CONTINUES FROM THE POINT AT WHICH
		YOU TYPED ↑C.

FIRST THE FOUR BASIC MODE SWITCHING COMMANDS:

	EACH OF THE FOLLOWING COMMANDS FINDS THE CLOSEST PRIMITIVE
	IN THE DRAWING AND MAKES IT THE "CLOSEST" PRIMITIVE. IF YOU
	ARE FINDING BODIES YOU MAY NOT DO OPERATIONS ON POINTS, ETC.

	εP	FIND THE CLOSEST POINT. A LARGE P INDICATES THE POINT.
		IF THE POINT HAS TEXT ON IT A LARGE T IS USED.

	εT	SAME AS εP EXCEPT THAT THE ONLY POINTS WHICH WILL
		BE FOUND ARE THOSE WITH TEXT ON THEM.

	εL	FIND THE CLOSEST LINE. A LINE IS NOT "CLOSE" TO A POINT
		UNLESS THE PERPENDICULAR FROM THE POINT TO THE LINE
		INTERSECTS THE SEGMENT WHICH IS THE LINE. A LARGE L
		INDICATES THE MIDPOINT OF THE LINE.

	εB	FIND THE CLOSEST BODY. A LARGE B IS PLACED
		AT THE CENTER OF THE BODY.

	εS	FIND THE CLOSEST SET. A LARGE S IS PLACED AT THE
		CENTER OF THE SET. THE CENTER OF A SET IS THE
		AVERAGE OF THE LOCATIONS OF ITS MEMBERS.

THE FOLLOWING 4 CHARACTERS INDICATE WHICH KIND OF INPUT YOU ARE DOING:

*	WAITING FOR SINGLE LETTER COMMAND
←	WAITING FOR SINGLE LETTER, NOT COMMAND
↑	(AT DEC)
→	(NOT AT DEC)
	WAITING IN LINE MODE (ONLY USED DURING MACROES TO INDICATE THIS,
	OTHERWISE NO CHARACTER).
:	WAITING IN LINE MODE FOR A MULTI-STRING VARIABLE

SPECIAL CONTROL CHARACTERS AT ALL LEVELS!

	ε!	REFRESH DISPLAY.
NOW FOR THE COMMANDS YOU CAN GIVE ANYTIME:

THE FOLLOWING MOVE THE DRAWING UP, DOWN, LEFT, AND RIGHT.
THE AMOUNT IS DETERMINED BY THE FOLLOWING:

    <NOTHING>		1/8 WINDOW
	α		1/4 WINDOW
	β		1/2 WINDOW
	ε		1 WINDOW

	AT DEC	NOT AT DEC	MOVEMENT

	<	←		LEFT
	>	→		RIGHT
	[	↑		UP
	]	↓		DOWN

	SIZE CONTROLS: 

	λ*	MAKE THE DRAWING SMALLER.
	λ⊗	MAKE THE DRAWING LARGER.
		CHAR	NEW SCALE

		*	SCALE-1
		α*	SCALE*4/5
		β*	SCALE*2/3
		ε*	SCALE*1/2
		⊗	SCALE+1
		α⊗	SCALE*5/4
		β⊗	SCALE*3/2
		ε⊗	SCALE*2

CURSOR MOVING AMOUNTS:

<JUST CHARACTER>	1 STEP
	α		2 STEPS
	β		4 STEPS
	ε		8 STEPS
	<SHIFT>		16 STEPS
	α<SHIFT>	32 STEPS
	β<SHIFT>	64 STEPS
	ε<SHIFT>	128 STEPS

AT STANFORD AND MIT, USE <TOP> INSTEAD OF <SHIFT>

AT DEC	CHAR	SHIFTED CHAR	MOVEMENT
	8	(		LEFT
	9	)		RIGHT
	6	&		UP
	7	'		DOWN

NODEC	CHAR	SHIFTED CHAR	MOVEMENT
	(	[		LEFT
	)	]		RIGHT
	/	∂		UP
	\	∞		DOWN


L	εV	IN PC PROG GO TO LOGIC PROG, IN LOGIC PROG GO TO PC PROG.

	ε%	(DEC)
	ε&	(NODEC)
		ZERO "CURRENT" SET POINTER. THE "CURRENT" SET IS THE ONE
		WHICH GETS THINGS ADDED TO IT BY α&.

	εP	FIND CLOSEST POINT. SEE ABOVE.

	εT	FIND CLOSEST POINT WITH TEXT ON IT. SEE ABOVE.

	εL	FIND CLOSEST LINE. SEE ABOVE.

	εB	FIND CLOSEST BODY. SEE ABOVE.

	λ@	SAME AS "XDSKIN<CR>".

	αC	MOVE THE CURSOR TO THE PHYSICAL CENTER OF THE SCREEN

	βC	MOVES THE CURSOR AND THE POINT IN THE DRAWING AT WHICH IT
		RESIDES TO THE PHYSICAL CENTER OF THE SCREEN.

	εC	SET THE OFFSET AND THE CURSOR POS TO 0. (i.e. MOVE THE
		CURSOR AND LOGICAL 0,0 TO THE CENTER OF THE SCREEN).

D	εE	EDIT (OR CREATE) A BODY. YOU ARE ASKED "BODY TYPE?" THEN
		"DIP TYPE?". FIRST MAY NOT BE NULL, BUT SECOND CAN.
		YOU ENTER THE EDITOR WITH IT (OR EMPTY). IF THE BODY DID
		NOT EXIST BEFORE IT DOES NOW.


D	αI	INPUT BODY DEFINITIONS FROM A DRAWING FILE. THIS ALLOWS YOU TO DEFINE
		BODIES ONLY ONCE AND USE THEM IN ALL DRAWINGS.

PC	αI	LIKE βI EXCEPT THAT ANY UNPADDED DRILL HOLES ARE GIVEN PAD
		TYPE 1, BECAUSE UNPADDED HOLES DON'T WORK.

	βI 	INPUT A DRAWING.

D	εI	INPUT BODY DEFINITIONS ONLY. WHEN A CONFLICT ARISES (BODY
		ALREADY EXISTS), REPLACEMENT IS AUTOMATICALLY EFFECTED BY
		A GEOMETRIC MAPPING!

PC	εI	INPUT A ROUTE FILE (FROM WAGNER'S ROUTING PROGRAM). ASKS FOR
		FILENAME (DEFAULT EXTENSION IS "DAT"). FILENAME IS USUALLY
		FOR21. THERE SHOULD ALREADY BE IN THE DRAWING THE DIPS
		WHICH WERE ROUTED TO, IN THE EXACT POSITIONS AS WHEN
		THE FILE TO THE ROUTER (FOR20.DAT) WAS WRITTEN.

D	αL	LIST ALL THE BODY TYPES ON THE TTY. FOR LIBRARY BODIES THE
		LIBRARY NAME IS ALSO LISTED.

D	βL	LIST ALL THE BODY TYPES INTO A FILE WITH DEFAULT EXTENSION 'LST'.
		ALSO LISTED IN THE FILE ARE ALL THE PLOT LABEL STRINGS.

	αW 	WRITE OUT A WHOLE DRAWING IF THE FILENAME HAS NO
		"." IN IT THE EXTENSION ".DRW" (OR ".PC" FOR PC PROG) WILL BE ATTACHED.
		IF YOU SAY <EXISTS> IN PLACE OF THE FILENAME THE LAST ONE USED
		ON MAJOR INPUT OR OUTPUT WILL BE USED; IF NO PPN ARE GIVEN,
		THEY ALSO WILL BE THE LAST ONES USED ON INPUT. IF OTHER
		THAN THE LAST FILENAME AND PPN USED ON INPUT IS GIVEN,
		A CHECK IS MADE TO SEE IF IT EXISTS ALREADY.

	βW	WRITE A WIRE LIST FILE. THE EXTENSION ".WD" (OR ".WPC" FOR PC PROG) IS
		THE DEFAULT.

	εW	WRITE A PLOT FILE. THE EXTENSION "".DPL" AT DEC, .PLT" NOT AT DEC
		 (OR ".PCP" FOR PC PROG) WILL BE USED IF NONE IS SPECIFIED.

PC	αR	CHANGE THE WORKING SIDE OF THE PC CARD TO THE OTHER SIDE.

PC	βR	LEAVE "BOTH SIDES" MODE.

PC	εR	ENTER "BOTH SIDES" MODE. THE CURRENT WORKING SIDE IS
		DISPLAYED AT BRIGHTNESS 7 AND THE OTHER SIDE AT CURRENT
		BRIGHTNESS.

PC	?	USED IN CONJUNCTION WITH "SHORT" COMMAND. CAUSES NEXT SHORT
		ERROR TO BE DISPLAYED. EACH POINT ASSOCIATED WITH THE ERROR
		HAS A NUMBER FROM 1-4 ON IT. THIS NUMBER MAY BE USED IN THE
		"J" COMMAND IN POINT MODE TO JUMP TO THE POINTS IN ERROR.

D	?	USED IN CONJUNCTION WITH "IWIRES" OR "IERRORS" COMMANDS.
		STEPS THROUGH THE SIGNALS IN THE INTERNAL LIST ONE AT A TIME
		WHICH ALLOWS YOU TO CORRECT THE ERRORS (IERRORS) OR JUST LOOK
		AT ALL SIGNALS (IWIRES). THE IWIRES IS USEFUL FOR LOOKING
		AT ROUTER ERRORS BY RUN # SINCE THE RUN # IS DETERMINED BY
		THE ORDER OF THE WDR FILE.

	αH	ASKS FOR A VARIABLE NAME AND INCREMENTS THE VARIABLE.
		NUMERIC VARIABLES GET THE NEXT VALUE; STRING
		VARIABLES ARE SEARCHED FOR A NUMBER AND +1 IS ADDED;
		MULTI-STRING VARIABLES GET SET TO THE NEXT STRING.
		UPON REACHING THE LAST STRING, A MULTI-STRING VARIABLE
		BECOMES A NULL STRING. (SEE ALSO ;H UNDER MACRO COMMANDS.)

	βH	DEFINES A VARIABLE. ASKS FOR A DEFINITION. TYPE
		<NAME>←<STRING> TO DEFINE A STRING VARIABLE OR
		<NAME>:<STRING1><CR><STRING2><CR>...<CR><CR> TO
		DEFINE A MULTI-STRING VARIABLE OR
		<NAME>=<SUCCESSIVE VALUES> TO DEFINE A NUMERIC VARIABLE.
		<NAME> IS ANY LENGTH AND CONSISTS OF THE CHARACTERS
		A-Z, 0-9, . (PERIOD), %, $ (DOLLAR SIGN).
		<SUCCESSIVE VALUES> CONSISTS OF A STRING OF <VALUE>'S OR
		<ITERATION SPEC>'S SEPARATED BY COMMAS AND ENDING WITH
		CARRIAGE RETURN. <VALUE> IS AN ALPHABETIC CHARACTER OR
		A NUMBER (WITH OPTIONAL MINUS SIGN IN FRONT).
		<ITERATION SPEC> IS <VALUE>(<INCREMENT>)<ENDVALUE>
		OR <ITERATION SPEC>(<INCREMENT>)<ENDVALUE>.

		IF <VALUE> IS ALPHABETIC IN AN ITERATION SPEC, THEN
		<ENDVALUE> MUST ALSO BE ALPHABETIC. INCREMENTING AN
		ALPHABETIC CHARACTER IS DONE ACCORDING TO THE DEC
		ALPHABET. IF ADDING THE INCREMENT TO THE CURRENT VALUE
		EXCEEDS (OR EQUALS) THE ENDVALUE, THEN THE VARIABLE IS
		EQUAL TO THE ENDVALUE. IF THE CURRENT VALUE IS >0, THE
		CURRENT VALUE IS PADDED WITH ENOUGH LEADING ZEROS TO
		MATCH THE LENGTH OF THE INITIAL <VALUE> OF THE ITERATION
		SPEC. IF THE <ENDVALUE> IS OMITTED AT THE END OF THE
		DEFINITION, THE LAST (<INCREMENT>) GETS USED
		INDEFINITELY. (THIS IS THE ONLY PLACE WHERE A ZERO
		INCREMENT IS LEGAL.) IF THE DEFINITION ENDS WITH
		A <VALUE> OR <ENDVALUE> AND INCREMENTING IS CONTINUED
		BEYOND THE END OF THE DEFINITION, +1 BECOMES THE DEFAULT
		INCREMENT.

	εH	TYPES ALL VARIABLES AND THEIR CURRENT VALUES ON THE TTY.

λX	TYPES "WELL?" TO WHICH YOU MAY TYPE ANY OF THE
	COMMANDS IN THE FOLLOWING LIST, SEPARATED BY COMMAS ENDING WITH
	<CR>. THE ENTIRE LINE IS SCANNED BEFORE EXCUTING ANY OF THE COMMANDS.

	THE EXTENDED SCANNER IS FOR SETTING THE VALUE OF VARIABLES.
	TYPE ONE OF THE FOLLOWING TEXT STRINGS:

	HELP	LISTS ALL EXTENDED COMMAND NAMES IN A SUITABLY COLUMNATED FORMAT.

DEC	TIME	PRINTS THE RUNTIME, RUN QUEUE TIME, % SERVICE, AND REALTIME
		SINCE LAST "TIME" OR "-TIME" COMMAND. RUN QUEUE
		TIME IS THE AMOUNT OF TIME YOU SPENT IN THE RUN QUEUE
		REGARDLESS OF WHETHER YOU WERE RUNNING OR NOT.
		% SERVICE IS (RUNTIME * 100)/(RUN QUEUE TIME).
		ALL TIMES ARE IN SECONDS.

DEC	-TIME	RESET TIME CELLS (START ACCUMULATING FOR NEXT TIME COMMAND).

	BOOP	ASKS FOR TIME IN SECONDS AFTER WHICH TO BOOP.
		THEN IF THAT MANY SECONDS ELAPSE BETWEEN INPUT OF
		THE LAST CHARACTER AND GOING INTO INPUT WAIT FOR THE
		NEXT, THE BOOPER IS BOOPED (RING THE BELL).

	-BOOP	DISABLE BOOPING.

	SLICE	ASKS FOR "LOWER BOUND<UPPER BOUND>?" THIS SETS THE
		UPPER AND LOWER BOUNDS ON RESULTS OF EXPRESSIONS IN
		BRACKETS. THE BOUNDS ARE INCLUSIVE AND UPPER BOUND
		MINUS LOWER BOUND MINUS ONE IS ADDED(SUBTRACTED)
		TO(FROM) THE RESULT UNTIL IT IS INSIDE THE BOUNDS.
		RETURN WILL SET THEM TO - AND + INFINITY RESPECTIVELY.
		NOW YOU ARE ASKED FOR "SET VARIABLES, LN?". YOU MAY
		TYPE A STRING OF LETTER NUMBER PAIRS SEPARATED BY
		COMMAS. WHENEVER THE LETTER IS ENCOUNTERED IN AN
		EXPRESSION IT IS REPLACED BY ITS VALUE (THE NUMBER).

PC	INNER	THIS IS TO MAKE A "INNER PLANE FILE". IT DELETES ALL
		TEXT, LINES, AND POINTS WHICH ARE NOT DRILL HOLES
		AND PADS ALL DRILL HOLES WITH PAD TYPE 2 (CLEARANCE)
		THIS IS THE NORMAL INPUT TO THE "PPLOT" COMMAND TO
		MAKE INNER PLANE PLOTS. AFTER GIVING THIS COMMAND
		TEXT AND LINES MAY BE ADDED, PAD TYPES MAY BE CHANGED
		ETC., THE "CURRENT" SIDE IS STILL THE ONE WHICH GETS
		PLOTTED.

	CLEAR	THIS DELETES "ALL" BODIES, POINTS, SETS, AND
		DEFINITIONS OF BODIES.
		IT ALSO RESETS ALL SCREEN PARAMETERS TO THEIR DEFAULTS
		WHEN THE PROGRAM STARTS UP. FLAGS LIKE "LOWER" (LOWER CASE)
		AND "OUTSIDE" (OFFSET PIN #S OUTSIDE BODY) ARE NOT
		RESET.


	DSKIN	ASKS FOR A FILE NAME. THEN USES SAID FILE IN PLACE OF
		TELETYPE INPUT. USE SAME FORMAT IN FILE AS FROM TTY.
		AT STANFORD, USE NOT EQUAL (OCTAL 33) IN PLACE OF ALTMODE
		IN FILE. <ALPHA>, <BETA>, <EPSILON> REPLACE <CTRL> AND <META>.
		DISK INPUT BREAKS CAN BE GENERATED BY CHARACTER SPECIFIED
		IN ;Y MACRO COMMAND.
		IF AN ERROR OCCURS (THAT WHICH CAUSES ??? TO BE TYPED)
		AN AUTOMATIC DISK INPUT BREAK WILL BE GENERATED!

	DSKINH	DSKIN HOLD. THIS IS EXACTLY LIKE DSKIN, EXCEPT THAT
		AFTER SETTING UP THE INPUT FILE, IT GENERATES A DSK
		INPUT BREAK.

	IFLUSH	THIS COMMAND WILL FLUSH DISK INPUT BEFORE END OF FILE.

	DSKOUT	ASKS FOR FILE NAME. ALL TELETYPE INPUT IS COPIED TO
		THE OUTPUT FILE. THE FILE IS NOW OF THE FORM TO USE
		WITH "DSKIN".

	CLOSE	CLOSES THE FILE ENTERED BY "DSKOUT".

NODEC	SAVE	ASK FOR A FILENAME, THEN SAVES THE CURRENT CORE IMAGE
		UNDER THAT FILENAME, THE DEFAULT EXTENSION IS DMP.
		THE STARTUP ADDRESS IS SET TO RESTORE THE AC'S AND
		RETURN AS IF YOU HAD JUST GIVEN THE SAVE COMMAND.

DEC	SAVE	SAVES THE ACS AND SETS START ADDRESS TO SPECIAL PLACE
		THEN EXITS TO MONITOR. YOU CAN SAVE THE CORE IMAGE
		AND RUN IT LATER. YOU MAY ALSO START THIS CORE IMAGE
		AND CONTINUE ON. IN ANY CASE YOU COME BACK AFTER THE
		SAVE COMMAND.

L	RESAVE	LIKE SAVE COMMAND, BUT CAUSES THE PROGRAM TO RESTART
		WHEN IT IS RUN AGAIN. THIS IS GOOD FOR PATCHING
		AND NOT HAVING THE NAME "L.DMP[1,3]" REMEMBERED AS
		THE <EXISTS> NAME.

NODEC	ESAVE	THIS DOES A SAVE WITH THE REMEMBERED NAME (<EXISTS>)

	AUTOSAVE THIS ASKS "HOW MANY COMMANDS BETWEEN ESAVES?" AND
		EVERY TIME THAT MANY TOP LEVEL COMMANDS ARE PROCESSED
		IT DOES AN "ESAVE".

	-AUTOSAVE DISABLE AUTOSAVE.

	EWRITE	THIS WRITES OUT THE DRAWING WITH THE REMEMBERED NAME (<EXISTS>)

	AUTOWRITE THIS ASKS "HOW MANY COMMANDS BETWEEN EWRITES?" AND
		EVERY TIME THAT MANY TOP LEVEL COMMANDS ARE PROCESSED
		IT DOES AN "EWRITE".

	-AUTOWRITE DISABLE AUTOWRITE.

	ELIST	WRITES A WIRE LIST FILE ('WD') WITH THE CURRENT
		DEFAULT NAME. THE DEFAULT PPN IS NOT USED,
		THE CURRENT AREA IS USED INSTEAD. IF YOU WANT
		THE DEFAULT AREA, USE βW <EXISTS><CR> INSTEAD.

	EPLOT	WRITES A PLOT FILE ('DPL') WITH THE SAME NAME
		CRITERIA AS IN ELIST.

	ENAME	ACCEPTS A FILE SPECIFICATION TO USE AS THE <EXISTS> NAME.
		<CR> ALONE WILL CLEAR THE <EXISTS> NAME.

	MAKEWD	SETS BODY MODE AND DOES A CLEAR.
		ASKS FOR A FILENAME, THEN IF THE DATE
		OF THE 'WD' FILE CORRESPONDING TO THE 'DRW' FILE
		WHOSE NAME YOU TYPED IS OLDER THAN THAT OF THE 'DRW' FILE,
		THE 'DRW' FILE IS READ IN AND THE 'WD' FILE
		WRITTEN OUT.

	SETWRT
	WRTSET
		LIKE αW, EXCEPT THAT ONLY THE PINS AND BODIES IN
		THE CLOSEST SET ARE WRITTEN INTO THE FILE.

	IWIRES	THIS READS A LOGIC DRAWING WIRE LIST (ASKS FOR FILENAME)
		AND BUILDS AND INTERNAL LIST OF POINTERS TO THE APPROPRIATE
		PINS ON THE PC CARD (MUST HAVE ALREADY READ IN THE PC
		CARD DRAWING). THIS COMMAND IS CURRENTLY ONLY USED WITH
		THE "WROUTE" COMMAND. THE DEFAULT EXTENSION IS "WDR"
		WHICH IS GENERATED BY THE UML "W" COMMAND.

D	IERRORS  READS A 'LES' FILE IN AND PRINTS THE CATEGORY TITLE
		THEN A "?". IF YOU TYPE "Y" IT READS IN THE RUNS IN
		THE CATEGORY. OTHERWISE IT SKIPS THAT CATEGORY AND
		GOES TO THE NEXT ONE. ONLY ONE CATEGORY IS READ IN
		AT ANY TIME.

	-IWIRES
D	-IERRORS	THIS RELEASES THE STORAGE USED BY THE "IWIRES"
		AND "IERRORS" COMMANDS.

PC	WROUTE	ASKS FOR FILENAME, THEN WRITES THE FILE FOR INPUT TO
		WAGNER'S ROUTING PROGRAM. IF THERE IS NO INTERNAL
		POINTER LIST, YOU GET AN ERROR MESSAGE. THE NORMAL
		FILENAME THAT WAGNER'S PROGRAM USES IS "FOR20".
		THIS COMMAND DOES NOT PASS ANY WIRES WITH THE SIGNAL
		NAMES "VCC" OR "GND".
		ANY EXISTING WIRES OR FEED THROUGHS ARE PASSED TO THE
		ROUTING PROGRAM, BUT WAGNER WILL NOT NOTICE IF THEY
		PARTIALLY OR COMPLETELY CONNECT PINS WHICH NEED CONNECTING.

DEC
D	IUML	THIS READS A FILE FOR UPDATING DIP LOCATIONS AND
		CONNECTOR PIN NUMBERS. IT ASKS FOR A FILENAME. THE
		DEFAULT EXTENSION IS .UML. THE FILE IS THEN READ AND
		THE UPDATES ARE MADE. THE FILE FORMAT IS AS FOLLOWS:
			BODIES<CR>
			<OLD DIP LOCATION> <TAB> <NEW DIP LOCATION> <CR>
			PINS<CR>
			<OLD PIN NAME> <TAB> <NEW PIN NAME> <CR>
			END <CR>
		EACH TIME THE WORD "BODIES" OR "PINS" IS SEEN, THE
		PROGRAM MAKES A LIST OF CURRENT BODY OR PIN LOCATIONS.
		AFTER AN UPDATE, THE UPDATED BODY OR PIN IS REMOVED
		FROM THE LIST SO THERE IS NO CHANCE OF CONFUSION.
		AS MANY BODIES OR PINS AS DESIRED MAY BE LISTED UNDER
		THE WORD "BODIES" OR "PINS". THE BODIES SECTION AND
		THE PINS SECTION MAKE BE OMITTED OR REVERSED IN ORDER
		BUT THE WORD "END" MUST BE PRESENT ELSE AN ERROR
		MESSAGE WILL BE FORTHCOMING.
		SINCE THE DRAWING PROGRAM WAS DESIGNED TO HANDLE
		THE CASE WHERE MORE THAN ONE CARD MAY APPEAR IN
		A SINGLE DRAWING. IF THE PERMANENT CARD LOC
		IS SET FOR THIS DRAWING, YOU WON'T BE ASKED.
		OTHERWISE YOU MUST TYPE THE CARD LOCATION OF THE
		BODIES AND CPINS TO BE UPDATED. IF THE DRAWING ONLY
		CONTAINS ONE CARD BUT NO PERMANENT CARD LOC
		IS SET, YOU MAY TYPE <CR> TO THE CARD LOC PROMPT.

D	IPINS	THIS READS A FILE FROM WAGNER'S PARTIONING PROGRAM
		IT ASKS FOR A FILENAME (PROBABLY FOR20.DAT) THEN ASKS
		IF WANT A FILENAME OTHER THAN THE CURRENT DEFAULT ONE.
		THE CURRENT DEFAULT FILE NAME IS THE ONE YOU GET WHEN
		YOU USE AN <EXISTS>. IF THE FILENAME WHICH APPEARED IN THE
		"FILE" COLUMN OF THE WIRE LIST FOR THE PINS YOU WANT
		IS DIFFERENT THAN THE "CURRENT" ONE, TYPE IT. ELSE
		JUST TYPE CR.

	CEXCHANGE
		EXCHANGE BACKUP CONNECTOR PIN NAME WITH CURRENT CONNECTOR
		PIN NAME. BACKUP PIN NAME IS SET WHENEVER THE CURRENT CONNECTOR
		PIN NAME IS A "U" PIN AND THE ONE BEING SET IS NOT.

	LSIGNALS TYPES OUT ALL THE SIGNAL NAMES ASSOCIATED WITH WIRES
		IN WIRLST.

PC	FLASH	ASKS FOR A SIGNAL NAME, THEN FINDS THAT WIRE AND FLASHES
		IT. THE FLASHING POINTS MAY NOW BE USED IN THE SAME
		WAY AS IF YOU GOT THEM FROM THE LOGIC PROG.
		WILD PINS IN RUN ARE INDICATED ON LABEL LINE AT TOP.

	-FLASH	TURNS OFF ANYTHING THAT IS FLASHING!!!

PC	NFLASH	ASKS FOR A WIRE NUMBER. THE NUMBER IS THE ONE
		WHICH WAS PASSED TO THE ROUTER IN THE DAT FILE.
		THEN FINDS THE WIRE AND DOES THE SAME AS FLASH.

	ERROR	RE-ENABLE ERROR DISPLAY.

	-ERROR	THE β. (THAT'S <ALT><ALT><PERIOD>) IN D&PC
		(LAYOUT VERSION ONLY) AND "FLASH" AND "NFLASH" COMMANDS
		IN PC, MAY ATTEMPT TO SHOW ERRONEOUS PINS BY DISPLAYING
		"O←??" WITH THE "O" CENTERED ON THE PIN. THIS IS VERY
		CONFUSING, SO THE "ERROR" COMMAND CAN ENABLE AND DISABLE
		THE DISPLAYING OF THIS INDICATOR.

	MACRO	TYPES THE NAMES OF ALL DEFINED MACRO'S!

	AMACRO	ASKS FOR MACRO NAME, IF IT EXISTS, YOU ARE NOW IN ALTER
		MODE WITH THE MACRO. THE FOLLOWING CONVERSIONS WERE MADE
		TO PUT THE 9 BIT MACRO INTO THE 7 BIT TEXT EDITOR:

		MACRO CHAR	TEXT EDITOR CHAR
		<CTRL>		<VERTICAL TAB>	↑K
		<META>		<FORM FEED>	↑L
		<CR>		<FORALL>	↑T
NODEC		<ALTMODE>	<NOT EQUAL>	↑[
DEC		<ALTMODE>	<BELL>		↑G

	QUIT	LEAVE MACRO ALTER MODE WITHOUT MODIFYING ORIGINAL MACRO

	WMACRO	WRITES ALL CURRENTLY DEFINED AND NAMED MACROES INTO A FILE
		THE DEFAULT EXTENSION IS 'MCR'. ALSO WRITES OUT ALL VARIABLE
		DEFINITIONS (λH).

	IMACRO	READS A FILE WRITTEN BY "WMACRO" COMMAND AND DEFINES ALL THE
		MACROES FOUND THEREIN, ALSO VARIABLE DEFINITIONS.

	RMACRO	RENAME A MACRO. ASK FOR OLD NAME, THEN NEW NAME. NEW NAME
		MUST NOT BE IN USE ALREADY.

	DMACRO	DELETE A MACRO. ASK FOR MACRO NAME. MUST BE AT MACRO LEVEL
		0 (I.E. NO MACROS IN PROGRESS).

	PMACRO	TYPE NAME OF MACRO, MACRO IS PRINTED ON CONSOLE INTERPRETING
		CONTROL BITS INTO THEIR α, β, AND ε REPRESENTATION.

	SMACRO	ASKS FOR A MACRO NAME. ENABLES THE NAMED MACRO TO BE SAVED
		IN THE DRW OR PC FILE. A SPECIAL FEATURE INVOLVED IN THIS
		IS AFTER COMPLETION OF INPUT, THE MACRO NAMED "INIT" IS
		CALLED (IF DEFINED). THIS ALLOWS YOU TO HAVE THE WORLD SET
		IN A CERTAIN STATE WHEN A PARTICULAR DRAWING IS READ IN.
		NOTE: THESE MACROES ARE READ IN FROM LIBRARIES ALSO!
		ALSO, THE MACRO NAMED "INIT" AUTOMATICALLY HAS AN "SMACRO"
		COMMAND DONE TO IT WHEN IT IS DEFINED (;M OR ;D).

	-SMACRO	THIS DISABLES THE NAMED MACRO FROM BEING SAVED.

	INIT	ENABLE THE CALLING OF MACRO NAMED "INIT" WHEN DRAWING IS
		READ IN (THIS IS THE DEFAULT).

	-INIT	DISABLE THE CALLING OF THE MACRO NAMED "INIT".

	DPY	ENABLE DISPLAYING.

	-DPY	DISABLE ALL DISPLAYING.

PC	FLIP	INVERTS THE X COORDINATES OF THE DISPLAY SO YOU
		CAN LOOK AT THE CARD FROM THE "OTHER" SIDE.
		ALSO AFFECTS PLOTTING, SO YOU CAN READ THE TEXT
		THAT YOU PUT ON THE SOLDER SIDE OF THE BOARD
		WHEN IT IS ETCHED.

	PINS	ENABLE DISPLAY AND PLOTTING OF PIN #'S.
		THIS INCLUDES CONNECTOR PINS.

	-PINS	DISABLE PINS.

	LOCS	ENABLE DISPLAY AND PLOTTING OF BODY LOC'S.

	-LOCS	DISABLE LOCS.

D	DISLOC	SEE EDIT MODE.

D	-DISLOC	SEE EDIT MODE.

D	IDENT	ENABLE DISPLAYING OF BODYNAMES NEAR BODIES!
D&PC		ALSO DISPLAYS DIPNAME IF ANY!

	-IDENT	DISABLE SAME.

D	CLOCS
	CPINS	TURN ON CONNECTOR PIN LOCS.

D	-CLOCS
	-CPINS	TURN OFF CLOCS.

D	CBOX	ENABLE DISPLAYING OF BOXES AROUND CONNECTOR
		PIN DESIGNATIONS (THIS IS THE DEFAULT MODE).

D	-CBOX	NO BOXES PLEASE.

D	DEFPINS	ENABLE DISPLAYING OF DEFAULT PIN NAMES FROM DEFINITION.

D	-DEFPINS DISABLE DISPLAYING OF DEFAULT PIN NAMES.

D	RPINID	ENABLE DISPLAYING OF PIN IDS. THESE ARE GENERATED NUMBERS
		USED TO UNIQUELY IDENTIFY PINS. THEY ARE NOT TO BE CONFUSED
		WITH DEFAULT PIN NAMES.

D	-RPINID	DISABLE DISPLAYING OF PIN IDS.

	LINES	ENABLE DISPLAYING OF LINES.

	-LINES	DISABLE DISPLAYING OF LINES.

PC	DIPS	ENABLE DISPLAYING OF DIP PADS ABOVE SCALE OF 5.

PC	-DIPS	DISABLE DISPLAYING OF DIP PADS, SHOW BOX
		APPROXIMATING PADS.

PC	FINGERS	ENABLE DISPLAYING OF CARD FINGERS AND SHORTING BARS

PC	-FINGERS DISABLE SAME.

PC	FEEDTHROUGH  ENABLE DISPLAYING OF "X" "⊗" "O" ETC AT FEEDTHROUGHS AND PADS

PC	-FEEDTHROUGH  DISABLE SAME,

PC	COMPONENT  FORCE CURRENT SIDE TO BE COMPONENT SIDE

PC	SOLDER	FORCE CURRENT SIDE TO BE SOLDER SIDE

	TEXT	ENABLE TEXT.

	-TEXT	DISABLE TEXT.

D	PTEXT	ENABLE POINT TEXT SEPARATELY FROM BODY TEXT.

D	-PTEXT	DISABLE POINT TEXT SEPARATELY.

D	BTEXT	ENABLE BODY TEXT SEPARATELY.

D	-BTEXT	DISABLE BODY TEXT SEPARATELY.

D	SETPINS	DOES A βP TO ALL BODIES IN THE DRAWING. SEE βP IN
		BODY MODE.

D	-SETPINS  CLEARS ALL DIP PIN #'S (SO DEFAULT PIN NAMES GET USED).

D	TRANSPOSE  ASKS FOR BODY NAME, THEN "L" OR "R" AND DOES βT FOR
		ALL BODIES OF THE NAME YOU TYPED.

PC	SETDIP	ASKS FOR DIP TYPE NAME, AND REMEMBERS THAT FOR THE
		CLOSEST BODY FOR WIRE LISTER.

D	OFFALL	DOES AN εQ AND AN εZ TO EVERY POINT IN THE DRAWING.

	XTHICK	SETS A FLAG SO THAT εZ AND εQ ASSUME THAT YOU ARE GOING
		TO PLOT YOUR FILE IN EXTRA THICK MODE WITH P OR PCP (THE
		E COMMAND).  IT CAUSES IT TO THINK THAT POINT TEXT IN SCALE
		ONE AND CONNECTOR PIN TEXT ARE ONE BIT WIDER THAN ORDINARILY.
		THIS DOESN'T YET DO THE RIGHT THING FOR BODY TEXT.

D	OFFRIGHT CAUSES ANY εZ COMMANDS TO ALSO SET A BIT WHICH CAUSES
		THE LINE TO BE MOVED TO THE RIGHT INSTEAD OF MOVING THE POINT
		LEFT.

D	-OFFRIGHT TURN OFF OFFRIGHT FEATURE (DEFAULT STATE).

	FDIP	ASKS FOR A DIP TYPE NAME, THEN FINDS ALL
		BODIES IN DRAWING WHICH USE THAT DIP TYPE AND
		MARKS THEM FOR THE "αF" COMMAND IN BODY MODE.

	FLNAME	ASKS FOR A BODY DEFINITION NAME, THEN FINDS
		ALL BODY DEFINITIONS IN DRWING WHICH HAVE THAT
		NAME. USE "XFLNEXT" TO EDIT THEM.

	FLDIP	SAME AS FLNAME, BUT FINDS DEFINTIONS BY DIP TYPE NAME
		INSTEAD OF BODY NAME.

	FLNEXT	IF NOT IN EDIT OR ALTER MODE, FIND NEXT MARKED BODY
		DEFINITION AND ENTER THE EDITOR WITH IT.

	FLPIN	SEE EDIT PIN MODE.

	FLPNEXT	SEE EDIT PIN MODE.

D	TMOVE	MOVE TEXT OFFSET USING CURSOR MOVING COMMANDS, BUT
		THE OFFSET IS CHANGED DIRECTLY. THAT IS THE CURSOR MOVE
		COMMAND IS NOT SCALED BUT IS 1, 2, 4, 8, 16, 32, OR 64
		INCREMENTS (AND INCREMENT IS 1/8 OF A SIZE 1 CHAR WIDTH).
		TO EXIT THIS MODE, TYPE SPACE OR ALTMODE. ANY OTHER CHAR
		IS AN ERROR. WORKS FOR POINT TEXT AND EDIT TEXT.

D	LMOVE	SAME AS TMOVE, BUT MOVES CONNECTOR PIN LOCATION OFFSET.

D	OFFLOCS	THIS CAUSES THE LOCATION OFFSETS FOR ALL BODY LOCATIONS
		CURRENTLY SET IN THIS DRAWING TO BE SET TO THE VALUE FROM
		THE BODY DEFINITION. AND SETS THE BIT TO CAUSE THIS
		OFFSET TO REMAIN WITH THAT OF THE DEFINITION.

D	FIXALL	DO βF (EDIT PIN MODE COMMAND) TO ALL BODIES..

D	OUTSIDE	SET MODE TO PUT PIN #'S OUTSIDE DURING AUTO PLACING.
	(DEFAULT AT DEC)

D	-OUTSIDE SET MODE TO PUT PIN #'S INSIDE DURING AUTO PLACING.
	(DEFAULT NOT AT DEC)

	WINDOW	LIMIT OPERATIONS TO THE ON SCREEN PORTION OF THE
		DRAWING.(THIS IS THE DEFAULT FOR NODEC)

	-WINDOW	ALL OPERATIONS APPLY TO THE ENTIRE DRAWING
		NOT JUST THOSE THINGS ON SCREEN. (THIS IS DEFAULT FOR DEC)

	LWINDOW	ANY LINE SEGMENT WHICH HAS ONE OR MORE ENDPOINTS
		OFF SCREEN IS SOFTWARE WINDOWED. THIS CAUSES
		A NOTICABLE AMOUNT OF COMPUTING SO BE CAREFUL!

	-LWINDOW	DISABLE LWINDOW (AND SAVE TIME).

	NEWID	RE-ALLOCATE ALL BODY AND POINT ID'S, THIS MAY BE
		NECESSARY IF A LOT OF SET COPYING AND DELETIONS
		ARE DONE.

D	DIAMONDS
		ENABLE PLOTTING OF DIAMONDS AT THE INTERSECTION
		OF FOUR LINE SEGMENTS (NOT SHOWN ON DISPLAY).
		ASKS IF YOU WANT DIAMONDS AT THE INTERSECTION OF
		THREE LINES!

D	-DIAMONDS
		DISABLE DIAMONDS

	CURSOR	ENABLE LIGHT PEN TRACKER.

	-CURSOR	DISABLE LIGHT PEN TRACKER.

	CLOCATE	SHORT DASHED LINES, ONE HORIZONTAL AND ONE VERTICAL
		INDICATE THE CURRENT CURSOR POSITION.

	-CLOCATE   DISABLE CLOCATE.

	LOCATE	LONGER DASHED LINES, ONE HORIZONTAL AND ONE VERTICAL
		INDICATE THE LOCATION OF THE "CLOSEST" THING.

	-LOCATE	DISABLE LOCATE.

	CENTER	CENTERS FLASHING POINTS(PC PROG) OR LINES(DRAWING PROG)
		AND SETS APPROPRIATE SCALE FACTOR TO SEE ALL FLASHING
		PINS. THIS IS DONE WHEN YOU TYPE THE COMMAND IF ANY
		PINS ARE FLASHING, AND WHEN YOU START FLASHING ANY
		NEW ONES.

	-CENTER	DISABLE CENTERING.

	SPACES	MAKES SPACES SIGNIFICANT FOR ALL COMPARISONS.
		THIS APPLIES TO ALL αF COMMANDS, F IN ALTER MODE,
		AND "FLASH" EXTENDED COMMAND.

	-SPACES	SPACES ARE NOT SIGNIFICANT, IN THIS MODE "↔" IS TREATED
		AS A SPACE.

	EXACT	MAKES MATCH ROUTINE FOR ALL βF, AND εF COMMANDS, F IN ALTER MODE, AND
		"FLASH", FDIP, ETC. EXTENDED COMMAND, TREATING
		ALL CHARACTERS AS THEY ARE, DOESN'T CONVERT LOWER CASE
		TO UPPER OR ↔ TO SPACE.

	-EXACT	SEE UPPER AND LOWER CASE AS SAME. THIS IS THE DEFAULT.

	DDT	ENTERS DDT(RAID) IF PRESENT. TO RETURN
		TYPE "RαG".

	SCALE	SET SCALE FACTOR.(GUARANTEED TO PUT GRID POINTS
		ON SCOPE POINTS.)
		ORIGINALLY SCALE=16 (8 AT DEC) (2 FOR PC)

PC	STEP	SET THE MINIMUM DISTANCE THE CURSOR WILL MOVE
		FOR SMALLEST STEP (MUST BE DIVISIBLE BY 5 (MILS)).
D	SIZE	ASKS FOR PLOTING SCALE, THEN TELLS YOU HEIGHT
		AND WIDTH OF DRAWING AND THE SMALLEST BOX WHICH
		WILL FIT AROUND IT. AT DEC, THE BOX SIZE IS INDEPENDENT
		OF THE PLOT SCALE. VALUES GIVEN ARE WITH RESPECT TO
		CURRENT DRAWING SCALE.

PC	SIZE	TELLS YOU HOW WIDE YOUR PC CARD WILL BE (NOT
		COUNTING THE CARD OUTLINE) WHEN PLOTTED AT A
		SCALE OF 1 (REAL SIZE).

	BRIGHT	ASKS:

		NORMAL BRIGHTNESS? <type one digit or cr for no change>

		ADDITIONAL BLINKING BRIGHTNESS? <same>
			(BLINKING BRIGHTNESS REFERS TO THE
			THE BRIGHNESS OF FLASHING ITEMS.)

	PC	BOTH SIDES BRIGHTNESS? <same>


	-BRIGHT	RESETS ALL OF THE ABOVE TO THEIR DEFAULTS
		AT STARTUP TIME.


	CURBRT	SETS CURSOR BRIGHTNESS

	-CURBRT	SETS CURSOR BRIGHTNESS BACK TO DEFAULT AT STARTUP TIME.

	MOVE	MOVES CURSOR X,Y(IN MILS) RELATIVE TO
		ITS CURRENT POSITION. IN DRAWING PROG
		IT MOVES IN HALF GRID STEPS.

	XOFF	SETS ABSOLUTE X OFFSET.

	YOFF	SETS ABSOLUTE Y OFFSET.

D	TITLE	ASKS FOR 2 STRINGS, "TITLE LINE 1" AND "TITLE LINE 2"
		THESE ARE REMEMBERED AND USED FOR PLOT FILES SO YOU
		DON'T HAVE TO TYPE IT TO THE PLOT PROG. IF NULL STRING
		IS GIVEN, THE PLOT PROG WILL ASK FOR THAT ONE.
		At CMU only the first title line is actually plotted.

D	-TITLE	STORE TITLE LINES IN MACRO SEPERATED BY CRLF.

D	SITE	SIMILAR TO "TITLE", NAMELY IT ASKS FOR 2 STRINGS.
		"SITE LINE 1" AND "SITE LINE 2". THESE APPEAR
		IN THE BOX TO THE LEFT OF THE TITLE LINES ON A PLOT.
		NO LONGER USED AT DEC.

D	-SITE	STORE SITE LINES IN MACRO SEPERATED BY CRLF.

D	AUTHOR	LIKE TITLE BUT SETS STRING TO BE USED IN THE
		FRONT OF WIRELISTS ONLY.

D	-AUTHOR	STORE AUTHOR LINE IN MACRO.

D	MODULE	SET A STRING WHICH IS THE MODULE NAME. THIS STRING
		WILL APPEAR ON PLOTS IN BOX LABELED "NUMBER".
		THIS WILL ALSO APPEAR IN FRONT OF WIRE LISTS AND
		WILL BE CHECKED FOR CONSISTENCY ON EACH CARD.

D	-MODULE	STORE MODULE LINE IN MACRO.

D	VARIABLE SET A STRING WHICH IS THE VARIABLE PART OF THE DRAWING
		NUMBER. IT APPEARS AFTER THE MODULE NAME SEPERATED BY
		A DASH.

D	-VARIABLE STORE VARIABLE LINE IN MACRO.

D	PREFIX	SET A STRING WHICH IS THE REFERENCE PART OF THE DRAWING
		NUMBER. IT APPEARS AFTER THE VARIABLE PART AND IS SEPERATED
		BY A DASH. AT SOME POINT THIS MAY BE CHECKED AGAINST THE
		BEGINNING OF ALL SIGNAL NAMES WHICH ORIGINATE ON THIS DRAWING
		TO SEE THAT THEY ARE PREFIXED CORRECTLY.

D	-PREFIX	STORE PREFIX LINE IN MACRO.

D	REVISE	SET A STRING WHICH IS THE REVISION LEVEL. THIS
		STRING WILL APPEAR ON PLOTS IN BOX LABELED "REV.".
		IT WILL ALSO APPEAR IN THE FRONT OF WIRE LISTS.

D	-REVISE	STORE REVISION LINE IN MACRO.

D	SHEET
D	PAGE	SET 2 STRINGS, "SHEET" AND "OF". THESE ARE PLOTTED
		IN THE PLOT LABEL BOX AND ON WIRELISTS INDICATING
		WHAT PRINT OF A GROUP THIS IS.

D	-SHEET
D	-PAGE	STORE PAGE AND OF STRINGS IN MACRO SEPERATED BY CRLF.

D	DCODE	SET DRAWING CODE FOR PLOT PROGRAM. THIS STRING SHOULD
		BE NO MORE THAN 2 LETTERS. IT INDICATES THE TYPE
		OF DRAWING THIS IS. IF NO STRING IS SET, "CS" WILL BE
		USED BY THE PLOT PROG. "CS" STANDS FOR CIRCUIT SCHEMATIC.
		BEFORE INVENTING A NEW CODE, CONSULT THE APPROPRIATE
		DEC STANDARD TO SEE IF ONE ALREADY EXISTS.

D	-DCODE	STORE DRAWING CODE LINE IN MACRO.

D	NEXTHI	SET STRING TO APPEAR IN "NEXT HIGHER ASSEMBLY:" BOX
		IN PLOT BOX.

D	-NEXTHI	STORE NEXTHI STRING IN MACRO.

D	DRAWN	THIS SETS A SIGNATURE FILE NAME (DEFAULT EXTENSION
		'SIG'). THE SIGNATURE WILL BE PLOTTED IN THE BOX
		LABELED "DRN." THE DATE ON WHICH YOU GIVE THIS COMMAND
		WILL ALSO BE PLOTTED IN THE CORRESPONDING "DATE" BOX.

D	-DRAWN	STORE DRAWN SIGNATURE FILENAME STRING IN MACRO.

D	ENGINEER LIKE DRAWN BUT APPEARS IN BOX LABELED "ENG.".

D	-ENGINEER LIKE -DRAWN.

D	LTITLE	LISTS ALL THE PLOT BOX LABEL INFO.

D	PBOX	ASKS FOR BOX SIZE (TYPE SINGLE LETTER A-D OR
		PRECEDE WITH "V" TO GET VERTICAL STYLE BOX).
		SCALES DRAWING AND TEXT TO JUST FIT INTO BOX
		BUT MAINTAINS RATIO BETWEEN TEXT AND LINES
		WHICH YOU SEE ON THE SCREEN. WILL NOT BE SCALED
		LARGER THAN THAT WHICH MAKES TEXT LARGER THAN
		SIZE 3 ON PLOTTER. TELLS YOU SCALES BEFORE ASKING
		FOR FILE NAME.

D	SHOWBOX	ASKS FOR "<BOX LETTER><DRAWING SCALE>/<PLOT SCALE>?"
		THESE INDICATE THE BOX YOU WILL USE, THE DRAWING SCALE
		AT WHICH YOU WILL MAKE THE PLOT FILE (THE ONE IT LOOKS
		GOOD AT), AND THE PLOT SCALE YOU WILL USE LATER (USUALLY
		CONTROLLED BY THE CHAR SIZE YOU WANT). PLOT SCALE
		IS NOT REQUIRED (IN FACT NOT ALLOWED) AT DEC. THIS PUTS UP A
		BOX EXACTLY WHERE THE PLOT PROG WILL PLOT IT (DOESN'T
		INCLUDE THE ID BOX AT THE BOTTOM, JUST THE USABLE SPACE).
		THE BOX DOESN'T CHANGE RELATIVE TO THE DRAWING WHEN YOU
		SHIFT OR SCALE IT. IF DRAWING SCALE IS LEFT OUT CURRENT
		SCALE IS USED. IF PLOT SCALE IS LEFT OUT, 2 IS USED.
		YOU MAY USE BOXES A-E, OR VB-VE (OR X AT STANFORD).

D	PICCEN	CALCULATES A SHOWBOX, THEN MOVES ENTIER DRAWING SO THAT
		THE BOX WOULD BE CENTERED AROUND THE ABSOLUTE ORIGIN.

PC	PPLOT	PLOT AN INNER PLANE. ASKS FOR PLANE NUMBER. DOESN'T PLOT
		PADS WHICH TOUCH THE PLANE IN QUESTION. LINES ARE
		PLOTTED. WILL ALSO PLOT TEXT.

D	MUNG	MASSAGE. TRIES TO MAKE ALL LINES IN THE DRAWING EITHER
		HORZ. OR VERT.

PC	MUNG	FORCES ALL POINTS AND DIPS ONTO GRID POINTS.
		THIS IS DONE BY TAKING THE X AND Y LOCATIONS
		OF ALL THE DIPS AND POINTS IN THE DRAWING AND
		MAKING THEM MULTIPLES OF THE CURRENT STEP SIZE.
		IF IN SET MODE ONLY THE CURRENT SET IS MUNGED.
		(I WONDER WHY I CALLED THIS "MUNG"?)

	COUNT	TELLS YOU HOW MANY POINTS THERE ARE IN THE ENTIRE
		DRAWING. ALSO TELLS YOU HOW MANY OF EACH TYPE OF BODY.
PC		ALSO TELLS YOU HOW MANY OF THE POINTS ARE DRILL HOLES
		AND SUMMARIZES AMOUNT OF ETCH.


	DELNULL	ASKS IF YOU WISH TO MARK OR DELETE
		ALL NULL POINTS, THEN DOES THAT. A NULL POINT
		IS ONE WITH NO LINES, NO TEXT AND NO PIN
		CONNECTIONS. IF YOU CHOSE MARKING, USE THE αF
		POINT MODE COMMAND TO FIND THEM AFTERWARDS.

	DANGLE	FINDS ALL POINTS IN THE DRAWING WHICH SATISFY
		ONE OF THE FOLLOWING:
		1)	TWO COLINEAR LINES (ONLY TWO)
		2)	ONE LINE AND NO TEXT OR CPIN
		3)	TEXT AND NO LINES
		4)	NO TEXT OR LINES
		5)	CPIN AND NO LINES

	DELSET	DELETE ALL SETS, DOESN'T DELETE CONTENTS.

	SETCEN	RECALCULATE CENTERS OF ALL SETS.

D	TYPDEL
	DELTYP	ASKS "TYPE BODY NAME" THEN DELETE ALL INSTANCES AND
		THE DEFINITION. IF FROM LIBRARY, DEFINITION IS NOT
		DELETED.

D	RENAME	ASKS "TYPE BODY NAME" THEN ASKS "TYPE NEW
		BODY NAME" THE BODY IS GIVEN THAT NAME IF
		IT IS NOT IN USE.

D	GETLIB	ASKS FOR A "LIBRARY FILENAME?" THEN READS THE BODIES
		FROM THAT FILE AND MAINTAINS A POINTER TO THE FILE
		INSTEAD OF WRITING OUT THE BODY DEFINITIONS EACH TIME.
		REDUNDANT LIBRARY REFERENCES ARE IGNORED WHEN POSSIBLE.

D	DELLIB	DELETES ALL REFERENCES TO BODIES IN THE LIBRARY YOU
		MENTION, AND FLUSHES THE POINTER TO THE FILE.

D	LOCLIB	SAME AS DELLIB, EXCEPT THAT ANY BODY WHICH IS USED IN
		THE DRAWING IS MADE LOCAL INSTEAD OF BEING DELETED.

D	TYPLIB	TYPES ALL LIBRARY FILENAMES.

D	LIBMAP	ASKS FOR OLD LIBRARY FILENAME, THEN NEW LIBRARY
		FILENAME. YOU SHOULD TYPE THE PPN
		EXPLICITLY AS THE DEFAULT FOR 0
		IS SET ONLY TO THAT OF THE CURRENT AREA, NOT FROM
		THE CURRENT PATH. THIS ALL SETS UP A MAPPING OF LIBRARY
		NAMES. WHEN A LIBRARY NAME IS READ FROM A DRW FILE,
		THE LIBMAP LIST IS CHECKED FOR AN OLD LIBRARY NAME
		THAT IS THE SAME. IF ONE IS FOUND, THE NEW LIBRARY
		NAME IS SUBSTITUTED FOR IT. TO CLEAR
		A SINGLE MAPPING TYPE <CR>
		FOR THE NEW LIBRARY NAME.

D	-LIBMAP	CLEAR ALL LIBRARY NAME MAPPINGS.

	LIBPPN	ACCEPTS A PPN WHICH IS USED AS THE PLACE
		TO FIND THE FILE "DIPS.DIP" WHICH HAS THE
		DIP DEFINITIONS IN IT AND "XXX.CRD" WHICH HAS THE
		PC CARD DEFINITION (PC PROG). LATER ON IT MAY ALSO
		BE USED AS A PLACE TO LOOK FOR LIBRARIES.

	-LIBPPN	RESET LIBPPN TO 0 (WILL LOOK ON CURRENT AREA
		AND CURRENT PATH.

D	GETBOD	ASK FOR A TYPE NAME, THEN A FILENAME
		THEN TRIES TO READ IT IN USING THE NORMAL
		IO ROUTINES (MAY HAVE TO REPLACE, ETC.).

D	MODLIB	THIS COMMAND SHOULD BE USED VERY CAREFULLY. IT ALLOWS YOU
		TO EDIT BODY DEFINITIONS, AND MAKE ANY OTHER CHANGES NORMALLY
		NOT ALLOWED DUE TO THE EXISTANCE OF A LIBRARY. YOU MUST THEN
		MAKE EXACTLY THE SAME CHANGES TO THE LIBRARY FILE SO AS TO
		MAINTAIN CONTINUITY.

PC	CARD	ASKS FOR CARD NUMBER, THEN READS IN THE SPECIFIED
		CARD. THE CARD CONTAINS THE CARD IMAGE ALL PINS,
		PIN #'S, CONNECTOR LOC'S, AND SHORTING BARS.
		ANY POINT WHICH IS NOT A FEED THROUGH OR A DIP PIN
		AND IS FOUND AT THE SAME LOCATION AS A CONNECTOR
		PIN WILL BECOME THAT CONNECTOR PIN. IF THE NUMBER
		YOU ASK FOR IS THE SAME AS THE CURRENT CARD, THEN
		IT IS MERELY DISPLAYED AGAIN. ARGUMENT OF 0 (OR
		JUST CR.) WILL CAUSE THE CARD TO BE FLUSHED!
		THE CARD NUMBER IS REMEMBERED WHEN THE CARD IS WRITTEN
		OUT!

PC	-CARD	DISABLE DISPLAYING OF CARD. CARD NUMBER IS STILL
		WRITTEN OUT. TO REDISPLAY THE CARD TYPE "X" THEN
		"CARD" CR FOLLOWED BY THE SAME CARD NUMBER AND IT
		WILL BE RE-DISPLAYED.

PC	SETLOC	SET #LL# (MODULE SLOT) FOR LOCATION OF THIS CARD ON BACK PANEL.
D		ASKS IF THIS IS PERMANENT CARD LOC FOR DRAWING
		IN WHICH CASE IT IS STORED IN ONE PLACE ELSE IT IS
		SPREAD THROUGH ALL LOCATIONS OF BODIES AND
		CONNECTOR PINS IN THIS DRAWING.

	-SETLOC	CLEAR LOCATIONS ON ALL BODIES. THIS DOES NOT UNDO
		SETLOC. TO UNDO SETLOC, TYPE "XSETLOC" AND <CR>.

PC	UML	WILL ASK FOR THE LETTER OF THE UPPERMOST DIP AND
		THE NUMBER OF THE RIGHTMOST DIP. THEN IT WILL SLICE
		UP THE CARD INTO ROWS AND COLUMNS AND ASSIGN DIP
		LOCATIONS.

PC	VCC	ALLOWS CONNECTION OF HIGHEST NUMBERED PIN OF DIP
		TO PROPER INNER PLANE. ONLY ON DIPS WITH MORE THAN
		3 PINS.
U		WILL ALSO CONNECT VCC RUN TO INNER PLANE IF FOUND IN
		WIRLST.

PC	GND	SAME AS VCC EXCEPT GROUND PINS AND RUN (U).

RPC	ROUTE	INITIALIZE ROUTING SYSTEM. THIS MAY BE DONE
		IF YOU THINK THE PROGRAM ISN'T KEEPING THE
		TABLES UP TO DATE, THE PROGRAM WILL TRY TO
		REINITIALIZE THE TABLES WHEN NECESSARY.

RPC	RDISP	DISPLAY A POINT IN EACH OCCUPIED SQUARE ON THE
		PC CARD. THIS IS ONLY A DEBUGGING AID.

RPC	-RDISP	DISABLE DISPLAYING OF POINTS.

RPC	RCODE	ASKS FOR "ROUTE CODE". YOU MAY TYPE A NUMBER
		FROM 0-3. THEY HAVE THE FOLLOWING MEANINGS:

			0	ROUTE ON COMPONENT SIDE ONLY
			1	ROUTE ON SOLDER ONLY
			2	HORIZONTAL ON COMPONENT, VERTICAL ON SOLDER
			3	VERTICAL ON COMPONENT, HORIZONTAL ON SOLDER

		STARTING THE PROG SETS RCODE TO 3!

RPC	THE FOLLOWING COMMANDS ALLOW MODIFICATION OF THE ROUTING
	ALGORITHM BY CHANGING THE WEIGHTING FACTORS OF CERTAIN
	TYPES OF ROUTES. THE COMMAND IS THE VARIABLE NAME.
	THIS CAUSES THE OLD VALUE TO BE PRINTED AND THEN
	ASK FOR THE NEW VALUE. <NUMBER><CR> SETS THE VARIABLE
	TO NUMBER. ANYTHING FUNNY LEAVES THE VARIABLE UNCHANGED
	THE FOLLOWING VARIABLES EXIST AND HAVE THE FOLLOWING
	MEANINGS:

		CNR	THE COST OF MAKING A CORNER (NOT INCLUDING
			FEED THROUGHS).

		FED	THE COST OF MAKING A FEED THROUGH.

		BAK	THE COST OF GOING AWAY FROM THE DESTINATION
			POINT.

		SID	THE COST OF ONE STEP ON THE WRONG SIDE OF
			THE BOARD (RCODE= 2 OR 3). NOT CHARGED AT
			CORNER!

PC	SHORT	THIS COMMAND SORTS EACH SIDE OF THE PC CARD
		INTO INTERNAL LISTS THEN CHECKS FOR SHORTS
		BETWEEN POINTS, POINT TO LINE, AND LINES
		CROSSING. ALL ERRORS ARE STORED IN A LIST
		WHICH MAY NOW BE SEARCHED USING THE "?"
		COMMAND (SEE "COMMANDS WHICH WORK ANYTIME").
		THEN FOLLOWING COMMANDS ALLOW YOU TO DIDLE THE
		VALUES USED FOR LINE WIDTHS, ETC.

PC	-SHORT	SHUT OFF SHORT ERROR DISPLAY (ERROR IS LOST).

PC	WIDTH	REPORTS OLD LINE WIDTH, ACCEPTS NEW.

PC	HOLE	CHANGE DIAMETER OF A BARE DRILL HOLE.

PC	CONNECTOR  CHANGE PSEUDO-DIAMETER USED FOR CONNECTOR PIN

PC	PADDIAMETER  ASK FOR "PAD TYPE NUMBER" THEN REPORTS
		OLD VALUE, AND ACCEPTS NEW.

PC	SEPARATION  CHANGE MINIMUM SEPERATION TO PREVENT SHORTING

PC	FTXT	FIND TEXT, SAME AS εF IN D IN POINT MODE.

PC	FCPIN	FIND CONNECTOR PIN, SAME AS βF IN D IN POINT MODE.

	FDIP	FIND DIP, LIKE εF IN BODY MODE, BUT MATCHES DIP
		TYPE STRING INSTEAD OF BODY NAME.
POINT MODE:
THE FOLLOWING APPLY IF THE LAST PRIMITIVE SEARCH COMMAND WAS εP OR εT
AND A POINT WAS FOUND.

	αP	PLACE A POINT AT THE CURRENT CURSOR POSITION.

D	λ+	START A RIGHT ANGLE FOLLOWING THE CURSOR FROM THE CLOSEST
		POINT. A STAR IS PLACED AT THE CLOSEST POINT EXCLUDING
		THE ONE YOU ARE DRAWING FROM.

D		ε$	(ALTMODE) STOP RIGHT ANGLE WITHOUT PLACING ANY
			MORE POINTS AND RETURN TO MAIN SCANNER.
	
D		λ-	ATTACH THE RIGHT ANGLE TO THE CLOSEST POINT
			(FOUND ABOVE) AND RETURN TO THE MAIN SCANNER.
			??? IS TYPED IF THIS WOULD REQUIRE THE DELETION
			OF AN EXISTING LINE, AND NOTHING IS DONE!
	
D		λ¬	MAKE A SINGLE SEGMENT FROM THE POINT THE RIGHT
			ANGLE IS COMING FROM TO THE CLOSEST POINT.(MAY
			NOT NECESSARILY BE HORZ. OR VERT., SO STRAIGHTEN
			IT.).

D		λ+	MAKE THE CORNER OF THE ANGLE INTO A POINT THEN
			START A NEW RIGHT ANGLE FROM THERE.

D		λSPACE	CAUSES THE SENSE OF THE ANGLE TO CHANGE.

D		βA	SEE βA BELOW.

PC	λ+	START A LINE FOLLOWING THE CURSOR FROM THE CLOSEST POINT

PC		λε$	LEAVE LINE DRAWING MODE WITHOUT PLACING LAST LINE.

PC		λ-	ATTACH LINE TO POINT WITH STAR ON IT.

PC		λ+	PUT DOWN END OF LINE AT CURSOR POSITION AND START
			NEW LINE.

PC		λ|	SIMULATES THE FOLLOWING, "+ <ALTMODE> αF αR +".
			IF YOU ARE NOT IN LINE DRAWING MODE, IT SIMULATES
			"αFαR+" ONLY.  This creates a feed through and jumps
			you onto the other side of the board.

PC		βA	SEE βA BELOW.

PC	αF	MAKE THE CLOSEST POINT INTO A FEED THROUGH. CREATE A POINT
		ON THE OTHER SIDE IF ONE DOES NOT ALREADY EXIST. PAD TYPE
		# IS SET TO 0.

PC	βF	LEGAL ONLY FOR FEED THROUGHS AND PINS. ATTACHES THE POINT
		TO THE INTERIOR PLANE SPECIFIED(0-3) AND INDICATES THIS ON
		THE POINT. 0 SHOULD BE USED FOR GROUND. 1 FOR TTL SUPPLIES.

PC	εF	LEGAL FOR ALL POINTS. ASKS "PAD TYPE #?" THE NUMBER YOU
		TYPE IS THE IDENTIFICATION # FOR THE TYPE OF PAD TO PLOT
		HERE. 0 IS NO PAD. 1 IS DEFAULT FOR DIP PADS. 2 IS DEFAULT
		FOR INNER PLANE CLEARANCES, THESE ARE SET ON BOTH SIDES
		OF DRILL HOLES WHEN THE EXTEND MODE COMMAND "INNER" IS USED.
		PAD TYPE 3 IS 50 MIL SQUARE USED FOR DIP PIN 1!

PC	αU	MAKE THIS FEED THROUGH NOT A FEED THROUGH.

PC	βU	DETACH THIS POINT FROM ANY INTERIOR PLANES.

	αD	DELETE CLOSEST POINT AND ALL LINES DIRECTLY ATTACHED TO IT.
		IF THE POINT IS A BODY ATTACHEMENT PONT IT DOESN'T REALLY
		GO AWAY JUST THE LINES, AND TEXT.

D	βD	SAME AS αD EXCEPT THAT COLINEAR SEGMENTS ARE MERGED.
		THIS WILL REVERSE A βB OPERATION ON A LINE!

PC	βD	SAME AS αD EXCEPT IN THE CASE WHERE EXACTLY 2 LINES LEAVE
		THE POINT. IN THIS CASE THE TWO LINES ARE MERGED INTO ONE
		BETWEEN THE REMAINING 2 POINTS.

	αM	PUTS THE CURSOR ON THE CLOSEST POINT. THEN MAKES IT FOLLOW
		THE CURSOR UNTIL A SPACE IS TYPED. THE LINES ARE MASSAGED
		AS YOU GO.

	βM	PUTS CURSOR AT CURRENT TEXT OFFSET (IF ANY TEXT) AND ALLOWS
		YOU TO CHANGE IT BY MOVING THE TEXT. IN D THE OFFSET IS RELATIVE
		TO THE CHARACTER SIZE, IN PC THE OFFSET IS TO AN ABSOLUTE
		POSITION ON THE CARD.
D		TURNS OFF BIT(S) TURNED ON BY εZ.

	εM	LIKE αM, EXCEPT THAT THE CURSOR IS NOT MOVED TO THE POINT
		SO THE POINT IS MOVED TO THE CURSOR.

	αA	ATTACH THE CLOSEST POINT TO THE CLOSEST OTHER POINT. A STAR
		IS PLACED ON THE OTHER POINT AND YOU ARE ASKED "THIS ONE?"
		TYPE "Y" TO ATTACH, ANYTHING ELSE TO RETURN TO COMMAND MODE.
		YOU MAY NOT ATTACH 2 BODY ATTACHEMENT POINTS.

	βA	PUTS A STAR ON THE CLOSEST LINE AND ASKS "THIS ONE?"
		IF YOU SAY "Y" THEN THE CLOSEST POINT WILL BECOME THE
		INTERSECTION-POINT OF THE LINE.
		IN POINT MODE WHEN DRAWING A LINE THE CLOSEST OTHER LINE
		WILL GET A POINT ON IT AT THE PLACE WHERE THE LINE YOU
		ARE DRAWING INTERSECTS IT. THEN A MINUS IS DONE TO THAT
		POINT.

	αB	IF THE CLOSEST POINT HAS 3 LINES ATTACHED TO IT, ONE OF
		THE 2 COLINEAR LINES IS BROKEN OFF FROM THE THE POINT
		AND ATTACHED TO A NEW POINT. THE NEW POINT IS THEN
		CONNECTED TO THE OLD ONE BY A SEGMENT IN THE OTHER
		DIRECTION.
		IF THE POINT HAS 4 LINES ATTACHED TO IT, THE UP AND RIGHT
		ARE RECONNECTED TO A NEW POINT WHICH IS THEN JOINED TO
		THE OLD POINT BY A HORIZONTAL SEGMENT.
		POINT WITH 2 HORZ LINES, OR 2 VERT LINES, IS DONE LIKE 3
		LINES. IF NOT 2, 3 OR 4 LINES, THEN ERROR.

	βB	THIS IS PRECISELY LIKE αB, EXCEPT IN THE CASE OF 4 LINES
		THE NEW SEGMENT CREATED IS VERTICAL INSTEAD OF HORIZONTAL.

	αT	ASKS "TEXT?" AND ATTACHES THE STRING TO THE POINT.
		IF "↔" APPEARS IN THE STRING, A CRLF IS INVENTED.
		IF THE CHARACTER "\" IS THE FIRST IN THE STRING
		THE FOLLOWING CHARACTER IS INTERPRETED AS THE CHAR.
		SIZE. NEITHER CHARACTER APPEARS IN THE STRING.
		IF A "V" APPEARS JUST BEFORE THE CHAR. SIZE THEN THE
		TEXT WILL BE PLOTTED VERTICALLY. A POINT IS DISPLAYED
		AT THE BEGINNING OF SUCH TEXT.
DEC		IF WHAT YOU TYPE IN HAS AN EXPLICIT H OR L AT THE END,
		THAT IS RETAINED. OTHERWISE ALL LINES CONNECTED TO THIS
		POINT ARE TRACED LOOKING FOR A BODY PIN HAVING A DEFAULT
		POLARITY. IF ONE IS FOUND, AN " H" OR " L" IS APPENDED
		TO THE TEXT STRING. IF THE STRING ENDS WITH " !", IT
		IS REMOVED AND NO POLARITY IS INVENTED.

D	εZ	CALCULATES A GOOD OFFSET FOR THE TEXT IF THE POINT HAS ONLY
		ONE SEGMENT ATTACHED TO IT. ALSO SETS A BIT WHICH CAUSES
		THIS OFFSET TO BE UPDATED WHEN THE TEXT CHANGES. ALSO IF
		CURRENTLY IN OFFRIGHT STATE, A BIT IS TURNED ON TO CAUSE
		THIS POINT TO MOVE RIGHT INSTEAD OF THE TEXT LEFT WHEN
		THE LINE LEAVES GOING TO THE RIGHT.

D	βZ	TURNS OFF THE BIT TURNED ON BY εZ.

D	εQ	CALCULATES A GOOD OFFSET FOR THE CONNECTOR PIN DESIGNATION
		UNDER THE SAME CONDITIONS AS εZ. ALSO SETS A BIT TO CAUSE
		THE CPIN DESIGNATION TO FOLLOW THE TEXT (OR THE POINT IF
		NO TEXT) WHEN EITHER THE CPIN # OR THE TEXT IS CHANGED.

D	βQ	TURNS OFF THE BIT TURNED ON BY εQ.

D	βT	αT FOLLOWED BY εZ.

	αK	IF THE CLOSEST POINT HAS TEXT ON IT THE TEXT IS DELETED.
D		POINT IS REMOVED FROM "TXTLST".

STANFO	αZ	LOADS THE TEXT INTO THE LINE EDITOR. THEN INPUTS THE
		RESULTANT STRING AND REPLACES THE TEXT WITH IT.

STANFO	αQ	SAME AS "Z" EXCEPT THE LINE EDITORS CURSOR IS AT THE END
		OF THE LINE.

D	αN	IF POINT OR CONNECTOR PIN:

		SET CONNECTOR PIN NUMBER.
		PIN NUMBER IS OF THE FOLLOWING FORM:

			#LL#LL# (BAY/TOPRACK/BOTTOMRACK/SLOT/PADDLE/PIN/SIDE)
			OR
			LL#	(PADDLE/PIN/SIDE)

		BOTTOMRACK MAY BE LEFT OUT AND IT WILL BE ASSUMED TO BE
		THE SAME AS TOPRACK. PADDLE MAY BE LEFT OUT AND IT WILL BE
		ASSUMED TO BE "A". IF NOT PREVIOUSLY A CONNECTOR
		PIN, A εQ IS PERFORMED.

		IF BODY ATTACHEMENT POINT:
		JUST TYPE PIN NUMBER.
L		IF YOU TYPE <EXISTS> AND ONE AND ONLY ONE CONNECTOR PIN WAS
		FOUND ON THE LAST RUN TRACED IN THE PC PROG, ITS LOCATION
		IS USED FOR THIS CONNECTOR PIN #.

D	βN	FOR CPIN'S ONLY. PUTS YOU AT THE CURRENT OFFSET FOR THE
		LOC TEXT AND LETS YOU MOVE IT. OFFSET IS RELATIVE TO CHAR
		SIZE OF LOC TEXT NOT PIC SCALE. ILLEGAL IF εQ DONE TO THIS
		POINT.

	COMMANDS TO MOVE ALONG WIRES:
	    PC	SEGMENT CHOSEN IS THE ONE WHICH MOST NEARLY POINTS IN THE
		CORRECT DIRECTION. IF NONE IN RIGHT DIRECTION, WILL CHOSE
		AN ORTHOGONAL ONE IF ONLY ONE EXISTS.
	    D	CHOSES SEGMENT IN THE SPECIFIED DIRECTION. IF NONE EXISTS
		WILL CHOSE ONE IN ORTHOGONAL DIRECTION IF ONLY ONE.

	NODEC	DEC	DIRECTION

	λ⊂	λ3	LEFT
	λ⊃	λ4	RIGHT
	λ∪	λ2	DOWN
	λ∩	λ1	UP

	α"	IF TEXT ON THIS POINT, ASKS FOR TEXT MACRO NAME. THEN
		STORES A COPY OF THE THE TEXT IN THE MACRO. NULL MACRO
		IF NOT TEXT.

	β"	ASKS FOR MACRO NAME, THEN STUFFS A STRING IN IT
		REPRESENTING THE PIN NAME ON THIS POINT. IF NOT
		PIN, NULL STRING RESULTS.
		FOR CPIN STRING IS:
			BAY/TOPRACK/BOTTOMRACK/SLOT/PADDLE/PIN/SIDE

		FOR DIP PIN STRING IS:
			BAY/TOPRACK/BOTTOMRACK/SLOT/DIPLETTER/DIPNUMBER"("PINNUMBER")"

NODEC	α&
DEC	α%	<CURRENT SET>←<CURRENT SET> UNION <CLOSEST POINT>
		POINT MAY NOT BE A BODY ATTACHEMENT POINT. IN PC
		POINT MAY NOT BE A CONNECTOR PIN.

NODEC	β&
DEC	β%	TRACE CONNECTIONS TO THIS POINT THROUGH BODIES AND POINTS
		AND PUT EVERYTHING FOUND IN A SET, ENTER SET MODE AND MOVE
		CURSOR TO SET CENTER AND MAKE SURE IT IS ON SCREEN.

NODEC	ε&
DEC	ε%	CLEAR <CURRENT SET>.

	α#	REMOVE POINT FROM CURRENT SET.

	β#	REMOVE POINT FROM ALL SETS.

D	εF	ASKS "SEARCH STRING". IF ENDED WITH ALTMODE NOTHING IS DONE.
		IF NULL STRING, OLD ONE WILL BE USED IF ANY. SEARCHES FOR
		ALL POINTS WHOSE TEXT HAVE THE SEARCH STRING AS A SUBSTRING.
		THE SPECIAL CHARS ALLOWED ARE DESCRIBE IN THE "F" COMMAND
		IN ALTER MODE DESCRIPTION. IF A MATCH IS FOUND, THE POINT
		IS MARKED FOR LATER REFERENCE.

D	βF	ASKS "SEARCH STRING". CONNECTOR AND DIP PIN NAMES
		ARE CONVERTED TO STRINGS AS IN β" AND MATCHED AGAINST
		THE STRING YOU TYPE AS IN εF.

D	αF	FIND A MARKED POINT. IF ON SCREEN, MOVE CURSOR THERE. IF NOT
		MOVE IT TO SCREEN CENTER AND MOVE CURSOR THERE.

L	.	SAVE NAME OF THIS PIN (MUST BE BODY PIN OR CONNECTOR
		PIN), AND GO TO THE OTHER PROG. IT IS THEN LOOKED UP
		IN THE OTHER PROG. IF IT IS FOUND, IT AND THE CURSOR
		ARE BROUGHT TO THE CENTER OF THE SCREEN. IF PC AND
		A CONNECTOR PIN, YOU ARE PLACED ON THE PROPER SIDE OF
		THE CARD.

	α.	(PERIOD) TRACE WIRE ATTACHED TO THIS POINT AND FLASH IT.
		TRACING INCLUDES WIRES WITH SAME SIGNAL NAMES (D ONLY).
		IF ANY CONS ARE ON THE WIRE, BUT OFF SCREEN, ONE OF THEM
		IS FLASHED IN THE UPPER RIGHT CORNER OF THE SCREEN(D ONLY).
L		ALL PINS FOUND ARE PUT IN A LIST AND LOOKED UP IN THE
		OTHER PROG THE NEXT TIME YOU GO THERE, THEN THEY AND
		ANY POINTS THEY CONNECT TO ARE FLASHED.

	β.	EQUIVALENT TO "α." FOLLOWED BY "εV" IF LAYOUT VERSION
		OTHERWISE SAME AS "α.".

LRPC	ε.	ENTER ROUTING MODE FOR FLASHING PINS.
		PROGRAM RESPONDS WITH "ROUTING PAIR = ".
		YOU WILL NOTICE THAT THE FLASHING PINS HAVE
		LETTERS ON THEM. TYPING TWO OF THE LETTERS
		FOLLOWED BY CR, CAUSES THE ROUTING ROUTINE
		TO BE ENTERED WITH THESE TWO PINS AS THE
		ENDPOINTS. ALL THE NORMAL COMMANDS APPLY TO THE ROUTING
		ROUTINE (NORMALLY ENTERED BY "εE") UP UNTIL THE TIME
		THAT YOU LEAVE IT. TYPING "ALTMODE" CAUSES YOU TO LEAVE
		ROUTING MODE. ANYTHING FUNNY GETS YOU THE
		QUERY AGAIN!

LRD	ε.	EQUIVALENT TO "εV" FOLLOWED BY "ε."!

	λJ<letter>	FINDS LETTER <letter> OF FLASHING PINS AND MOVES
		CURSOR THERE (IF POSSIBLE). ONLY WORKS WHEN LETTERS ARE
		BEING SHOWN! (ALSO WORKS FOR JUMPING TO "SHORT" ERRORS
		IF YOU TYPE A NUMBER INSTEAD OF A LETTER).
	λJ←<number>
		THIS FINDS THE nTH FLASH CONNECTOR PIN (DEFAULT IS 1)
		AND JUMPS TO IT.

	εA	IF THE CLOSEST POINT HAS TEXT ON IT YOU ENTER ALTER MODE!
		ALTER MODE IS A TEXT EDITOR DESCRIBED BELOW

RPC	αE	SET ENDPOINT ONE FOR ROUTING. A "←" INDICATES ENDPOINT ONE.

RPC	βE	SET ENDPOINT TWO FOR ROUTING. A "↔" INDICATES ENDPOINT TWO.

RPC	εE	MAKE A ROUTE FROM ENDPOINT ONE TO TWO. THE ALGORITHM
		COMPUTES SCORES FOR ROUTES. IT TRIES TO FIND ROUTES WITH
		SCORES OF 0 FIRST, THEN 1, ETC. WHEN A ROUTE IS FOUND YOU
		WILL BE ASKED "HOW ABOUT THIS ONE" AND THE ROUTE WILL BE
		BLINKED. WIRES ON THE CURRENT SIDE WILL BE BRIGHTER THAN
		THOSE ON THE OTHER. IF YOU RESPOND "Y" THE ROUTE WILL BE
		MADE AND MARKED. IF YOU SAY " " (SPACE) THE ROUTE WILL BE
		DISCARDED AND ANOTHER FOUND. IF YOU SAY "α " (CTRL SPACE)
		THE PROGRAM WILL SHIFT TO THE NEXT HIGHEST SCORE AND
		CONTINUE LOOKING. IF YOU SAY "ε$" ALTMODE THE PROGRAM WILL
		JUST QUIT. ANYTHING ELSE WILL GET YOU "???" AND THE
		QUESTION REPEATED. ALTMODE AND CTRL SPACE WILL WORK EVEN
		WHEN THE PROGRAM IS RUNNING (KEYBOARD INPUT ONLY)!
BODY MODE:
THE FOLLOWING COMMANDS APPLY IF THE LAST PRIMITIVE SEARCH COMMAND WAS
εB AND A BODY WAS FOUND.
	αP	PLACE A BODY AT THE CURRENT CURSOR POSITION. YOU
		ARE THEN PLACED IN MOVE MODE ON THAT BODY.
PC		PIN 1 GETS PAD TYPE 3 ALL THE OTHERS GET PAD TYPE 1.

D	αE	EDIT THE CLOSEST BODY.

D	αR	REPLACE THE CLOSEST BODY. YOU WILL BE ASKED FOR NEW BODY
PC	αG	NAME THEN THE YOU MAY SET THE REPLACEMENT MODE. IF YOU
		ANSWER "E", OR "N", THEN THE CORRESPONDENCE IS MADE BETWEEN
		PINS WITH IDENTICAL DEFAULT PIN NAMES (INCLUDING /B-L PART).
		ONLY PINS WHICH MATCH UNIQUELY ARE DONE, IF ALL PINS CANNOT
		BE UNIQUELY MATCHED IN "E" MODE, THEN YOU GET AN ERROR MESSAGE
		AND NOTHING IS DONE. IF YOU ANSWER "L" TO THE REQUEST, THEN A GEOMETRIC
		(CLOSEST PIN) MAPPING IS USED. IF YOU ANSWER "C" TO THE
		REQUEST A GEOMETRIC MAPPING WHICH WORKS FOR DIFFERENT #S
		OF PINS WILL BE USED. IF YOU ANSWER <CRLF> THEN YOU WILL BE
		ASKED FOR THE CORRESPONDENCE PIN BY PIN. ANY UNSPECIFIED
		PINS ON THE OLD BODY ARE DELETED, ANY UNSPECIFIED PINS ON
		THE NEW BODY ARE CREATED. IN "L" MODE, IF EACH PIN CANNOT
		BE MATCHED TO ANOTHER YOU WILL BE THROWN OUT. DURING THE ASKING
		OF THE CORRESPONDENCE QUESTION, BOTH THE OLD AND NEW BODIES
		WILL BE DISPLAYED WITH PIN IDS SHOWN FOR REFERENCE. THE OLD
		BODY WILL BE ON THE LEFT.


D	βR	REPLACE SOME. ASKS FOR OLD BODY NAME, THEN NEW BODY NAME,
PC	βG	THEN SETS UP CORRESPONDENCE AS IN αR, THEN PUTS A "*" ON
		EACH INSTANCE OF THE OLD BODY AND ASKS "THIS ONE?" IF YOU
		SAY "Y", IT IS REPLACED, OTHERWISE IT IS NOT. IF YOU SAY
		ALTMODE YOU GET BACK TO BODY MODE.

D	εR	REPLACE ALL. LIKE REPLACE SOME EXCEPT YOU AREN'T ASKED.
PC	εG		"

	αD	DELETE THE CLOSEST BODY.

	βD	DELETE THE CLOSEST BODY, PINS ARE TURNED INTO POINTS
		INSTEAD OF BEING DELETED.

	αM	MOVE THE CLOSEST BODY. THE CURSOR IS PUT AT THE CENTER OF
		THE BODY. THEN ALL PINS ON THE BODY ARE MASSAGED AS THE
		BODY IS MOVED. ANY CHARACTER STOPS YOU MOVING.

	αN	"NUMBER" THE CLOSEST BODY. NUMBERS MAY BE OF THE FOLLOWING
		FORM:

D			#LL#L#	(BAY/TOPRACK/BOTTOMRACK/SLOT/DIP COORDS LETTER/NUMBER)
			OR
			L#	(DIP COORDS LETTER/NUMBER)

		IF THE LOCATION OFFSET IS FOLLOWED BY "-n" THEN n IS USED
		TO DO AN εN TO THIS BODY. ALSO AN "L", "R", OR "*" MAY FOLLOW,
		WHICH WILL BE USED TO DO A βT TO THE BODY. THE OFFSET OF
		THE LOCATION STUFF IS SET TO THAT IN THE BODY DEFINITION,
		ALSO A BIT IS TURNED ON WHICH CAUSES ANY CHANGES TO THAT
		OFFSET IN THE DEFINITION TO BE UPDATED IN EACH BODY WITH
		THE BIT ON. THE BIT IS TURNED OFF BY THE βN COMMAND.

D	βN	LEGAL ONLY IF αN DONE PREVIOUSLY. PUTS YOU AT CURRENT
		OFFSET FOR LOC TEXT AND LETS YOU MOVE IT. THIS OFFSET
		IS SCALED BY DRAWING SCALE, NOT CHAR SIZE. THIS COMMAND
		TURNS OFF THE BIT WHICH CAUSES THIS LOC TO FOLLOW THE
		OFFSET SET IN THE BODY DEFINITION.

D	εN	IF THERE IS A DIP TYPE SET, READS THE DIP DEFINITION
		FROM THE FILE DIPS.DIP ON THE LIBRARY AREA. THEN ASKS WHICH SECTION
		YOU WANT THE PINS FROM, AND USES THE DEFAULT PIN NAMES AS A MASK
		TO MAP THE PIN #'S AND SET THEM.

	αO	ROTATE CLOSEST BODY 90 DEGREES COUNTER CLOCKWISE.
		MIRROR IMAGE THE BODY AFTER ROTATING 360 DEGREES.

	αS	SWAP. ASKS FOR TWO PIN ID'S (PIN #'S IN PC). IF
		THEY EXIST ON THIS BODY ALL LINES, TEXT, AND
		ANYTHING ELSE ARE SWAPPED BETWEEN THESE TWO POINTS.
		WHILE ASKING FOR PIN IDS, THEY ARE DISPLAYED ON THE BODY.

D	βS	SWAP PIN #'S. ANY PIN #'S ASSOCIATED WITH THE ID'S
		YOU TYPE WILL BE INTERCHANGED.

D	βT	ASK FOR AN "L", "R", OR "*". "L" MEANS PIN 1 OF DIP GOES TO
		PIN 2 OF SOCKET. "R" MEANS PIN 1 OF DIP GOES TO PIN 
		1 OF SOCKET. "*" MEANS TURN OFF PREVIOUS "R" OR "L".
		THIS MERELY SETS BITS IN THE BODY WHICH
		ARE PASSED TO THE WIRE LISTER WITH THE PIN#. IF A PIN
		# NEEDS 1 ADDED TO IT TO GET THE SOCKET PIN # THEN
		A "+" WILL APPEAR AFTER IT, IF IT NEEDS 2 ADDED TO IT
		A "+2" WILL APPEAR AFTER IT.

D	βP	SET PIN #'S FROM DEFAULT PIN NAMES.

NODEC	α&
DEC	α%	<CURRENT SET>←<CURRENT SET> UNION <CLOSEST BODY>

NODEC	β&
DEC	β%	TRACE CONNECTIONS TO THIS BODY THROUGH POINTS AND BODIES
		AND PUT EVERYTHING FOUND IN A SET, ENTER SET MODE AND MOVE
		CURSOR TO SET CENTER AND MAKE SURE IT IS ON SCREEN.

NODEC	ε&
DEC	ε%	CLEAR <CURRENT SET>.

NODEC	α≡
DEC	α5	TRACE ALL PINS ON THIS BODY TO THE NEXT POINT.
		IF IT IS NOT A PIN ON ANOTHER BODY, PUT IT
		IN A SET WITH THIS BODY. THEN ENTER SET MODE AND
		PLACE CURSOR AT SET CENTER.

	α#	REMOVE BODY FROM CURRENT SET.

	β#	REMOVE BODY FROM ALL SETS.

	εF	ASKS "SEARCH STRING". IF ALTMODE TYPED NOTHING IS DONE.
		IF NULL STRING, PREVIOUS SEARCH IS REPEATED.
		FOR EACH BODY, THE NAME (D) OR A STRING OF DIGITS REPRESENTING
		THE # OF PINS (PC) IS MATCHED AGAINST THE SEARCH STRING.
		IF A MATCH OCCURS, THE BODY IS MARKED FOR LATER.

	βF	ASKS "SEARCH STRING". IF ALTMODE TYPED NOTHING IS DONE.
		IF NULL STRING, PREVIOUS SEARCH IS REPEATED.
		CONVERTS THE LOCATION OF EACH BODY INTO A STRING AND MATCHES
		IT AGAINST THE SEARCH STRING. MATCHES ARE MARKED.

	αF	FIND NEXT BODY. SEARCHES DOWN THE BODY LIST FOR A MARKED BODY.
		IF ONE IS FOUND, THE CURSOR IS PLACED ON IT AND IT IS
		BROUGHT ON SCREEN (IF OFF).

D	α"	PUT BODY NAME INTO MACRO.

PC	α"	MAKE MACRO OF # OF PINS (STRING OF DIGITS). IF 2 PIN DIP,
		A <LF> AND THE SEPARATION IN MILS IS ALSO ADDED.

	β"	MAKE MACRO WITH LOCATION TEXT IN IT. NULL MACRO IF NO LOC.

	ε"	MAKE MACRO OUT OF DIP NAME. NULL MACRO IF NO DIP TYPE.

D	αT	PLACE BODY TEXT (SEE BODY TEXT/PROPERTY MODE).

D	αY	PLACE BODY PROPERTY (NEW OR OLD). (SEE BODY TEXT/PROPERTY MODE)

D	βY	CHANGE BODY PROPERTY (OLD). (SEE BODY TEXT/PROPERTY MODE)

D	εY	ENTER BODY TEXT/PROPERTY MODE.
		THE CLOSEST BODY BECOMES THE "CURRENT" BODY, THAT IS
		THE ONE WHOSE TEXT/PROPERTIES YOU ARE MANIPULATING.
BODY TEXT/PROPERTY MODE:

CLOSEST BODY TEXT IS INDICATED BY A "BT".
INVISIBLE BODY TEXT WILL NOT BE FOUND UNLESS MADE VISIBLE ("XIDENTS").


D	αT	LIKE αT IN EDIT TEXT/PROPERTY MODE, BUT TEXT IS
		ASSOCIATED WITH THE CURRENT BODY NOT THE DEFINITION.

D	αY	LIKE αY IN EDIT TEXT/PROPERTY MODE, BUT IF PROPERTY
		ALREADY EXISTED IN BODY DEF, THAT VERSION OF THE
		PROPERTY IS NO LONGER DISPLAYED. ALSO THE NEW PROPERTY
		TEXT IS NOT AFFECTED BY CHANGES TO THE BODY DEFINITION.

D	βY	LIKE βY IN EDIT TEXT/PROPERTY MODE, BUT WITH SAME
		DIFFERENCES AS αY IN BODY TEXT/PROPERTY MODE.

D	αK	STOP DISPLAYING. IF TEXT, DELETE. IF PROPERTY, MAKE
		IT INVISIBLE.

D	αD	DELETE TEXT OR PROPERTY.

D	βD	MAKE PROPERTY INTO ORDINARY TEXT.

D	αM	MOVE TEXT. TEXT FOLLOWS CURSOR UNTIL YOU TYPE
		SPACE OR ALTMODE.

D	βM	MOVE TEXT OFFSET.

D	εM	MOVE TEXT, BUT START BY MOVING TEXT TO CURSOR.

D	εA	ENTER ALTER MODE WITH CLOSEST TEXT.

D
STANFO	αZ	LINE EDIT TEXT. LINE EDITOR CURSOR IS AT BEGINNING OF LINE.

D
STANFO	αQ	LINE EDIT TEXT. LINE EDITOR CURSOR IS AT END OF LINE.

D	εZ	RECALCULATE TEXT OFFSET TO CENTER IT OVER MOVE POINT.
		TEXT IS NOW AUTOMATICALLY OFFSET WHEN CHANGED.

D	ε$	ALTMODE
D	<SPACE>	STOP MOVING.

D	α"	STORE TEXT INTO MACRO.

D	β"	STORE PROPERTY NAME INTO MACRO.

D	αF	FIND NEXT TEXT/PROPERTY WHICH WAS MARKED BY βF OR εF.

D	βF	FIND AND MARK ALL PROPERTIES WHICH HAVE THE STRING
		YOU TYPE AS A SUBSTRING OF THEIR PROPERTY NAMES.

D	εF	FIND AND MARK ALL TEXT/PROPERTIES WHICH HAVE THE STRING
		YOU TYPE AS A SUBSTRING OF THEIR TEXT.

D	αE	ENTER BODY EDITOR WITH CURRENT BODY.

	BODY TEXT/PROPERTY MODE EXTENDED COMMANDS:

D		TMOVE	MOVE TEXT OFFSET WITH CURSOR COMMANDS.
SET MODE:
THE FOLLOWING COMMANDS APPLY IF THE LAST PRIMITIVE SEARCH COMMAND WAS
εS AND A SET WAS FOUND

	λ+	DRAW A BOX AROUND THE POINTS AND BODIES YOU WOULD
		LIKE IN THE SET, USING + LIKE WITH DRAWING LINES.
		SAY - TO CLOSE THE BOX AND THE SET IS DEFINED.
		ALL MEMBERS OF THE SET WILL HAVE B'S OR P'S ON THEM.
		PSEUDO-CENTER IS INDICATED BY AN S.

	βP	MAKES A COPY OF THE CLOSEST SET AT
		THE CURRENT CURSOR LOCATION, THEN
		PUTS YOU IN MOVE-THE-SET MODE (SEE BELOW).

	αM	POSITIONS THE CURSOR ON THE CENTER OF THE
		SET. THE SET NOW FOLLOWS THE
		CURSOR. THE SET MEMBERS ARE AGAIN INDICATED.

	εM	LIKE αM, EXCEPT THAT THE SET IS MOVED TO
		THE CURSOR BEFORE MOVING IS STARTED.

	αD	DELETE THE CLOSEST SET.

	βD	DELETE ALL ELEMENTS OF THE CLOSEST SET FROM THE PICTURE.

	εD	DELETE ANYTHING NOT IN CLOSEST SET.
		THE <EXISTS> NAME IS FORGOTTEN.

PC	αO	ROTATE SET 90 DEGREES COUNTER CLOCKWISE.

	βK	DELETE ALL TEXT ON POINTS IN SET!

NODEC	α&
DEC	α%	<CURRENT SET>←<CURRENT SET> UNION <CLOSEST SET>
		THIS MAKES A NEW SET IF THERE IS NO CURRENT SET.

NODEC	β&
DEC	β%	<CURRENT SET>←≡<CLOSEST SET>	DOESN'T MAKE NEW SET

NODEC	ε&
DEC	ε%	CLEAR <CURRENT SET>.

	α#	REMOVE ALL MEMBERS OF CLOSEST SET FROM CURRENT SET.
		ILLEGAL IF CURRENT SET IS CLOSEST.

	β#	REMOVE ALL MEMBERS OF CLOSEST SET FROM ALL SETS.
		THEN DELETE CLOSEST SET.

	αJ	MOVE CURSOR TO CURRENT SET AND MAKE IT CLOSEST.
LINE MODE:
THE FOLLOWING COMMANDS APPLY IF THE LAST PRIMITIVE SEARCH COMMAND WAS
εL AND A LINE WAS FOUND.

	αD	DELETE THE LINE. DOES NOT AFFECT ITS ENDPOINTS.

PC	βD	DELETE A WIRE. DELETES THE CLOSEST LINE, THEN FOLLOWS
		LINES LEAVING THE ENPOINTS OF THE ORIGINAL LINE, DELETING
		AS IT GOES. IT ALSO FOLLOW FEEDTHROUGHS THROUGH THE
		BOARD, BUT NOT DIP PINS. THIS PROGRESSES UNTIL A JUNCTION
		IS REACHED.

	αB	PUTS A BEND ON THE LINE EVEN WITH THE CURSOR (MAKES IT
		INTO 3 SEGMENTS). YOU ARE THEN MOVING THE MID-POINT.

D	βB	PUTS A POINT ON THE LINE EVEN WITH THE CURSOR.

PC	αJ	"JUMPS" SEGMENT TO OTHER SIDE OF PC CARD, CREATING OR
		DELETING FEED THROUGHS AS NECESSARY.

PC	βJ	"JUMPS" A "WIRE" TO THE OTHER SIDE OF THE PC CARD, CREATING
		OR DELETING FEED THROUGHS AS NECESSARY. A "WIRE" IS THE
		CLOSEST SEGMENT TRACED THROUGH ADJOINING SEGMENTS UNTIL
		ONE OF THE FOLLOWING IS REACHED; A FEED THROUGH, A PIN,
		OR A JUNCTION!
ALTER MODE:


	λ0-λ9		NUMBERS ARE REMEBERED AND USED AS REPEAT FACTORS
			FOR SOME COMMANDS. THESE COMMANDS ARE PRECEEDED
			BY <n>.

	-		PRECEDES <n> USED IN SOME COMANDS TO DO
			BACKWARDS DELETE, MOVE,ETC. USE IN COMMAND
			INDICATED BY <->.

	\<size>		Text alter mode and edit alter mode only. This sets
			the character size of the this piece of text. The
			format is the same as for text typin:

				<size> = V<digit 1-4>
				"V" IS OPTIONAL (FOR VERTICAL TEXT)

	<n>S<char>	MOVE TO CHAR (END IF NOT FOUND)
			IF FOUND POINTER IS AFTER CHARACTER.

	<-><n>D		DELETE n CHARACTERS (NO-OP AT END)
			IF <->, N CHARACTER BEFORE POINTER ARE DELETED.

	<n>C<STRING OF LENGTH N>
			CHANGES THE NEXT N CHARACTERS IN THE TEXT
			TO THE NEXT N CAHRACTERS TYPED. ALT MODE (ε$)
			OR <CR> TYPED IN <STRING> CAUSES THE CORRESPONDING
			TEXT CHARACTER TO BE UNCHANGED.

	<-><n><space>	MOVE FORWARD n SPACES (NO-OP AT END OF LINE)
			IF <->, MOVE BACKWARDS.

	<-><n><backspace> MOVE BACKWARD n SPACES (NO-OP AT BEGINNING OF LINE)
			IF <->, MOVE FORWARDS.

	I		ASKS "INSERT TEXT←" AND INSERTS THE STRING YOU TYPE.
			TEXT IS INSERTED BEFORE THE CURRENT CHAR WHICH
			REMAINS THE CURRENT CHAR.

	<-><n>R		EQUIVALENT TO "<-><N>DI".

	ε$		<altmode> LEAVE ALTER MODE.

	<n>K<char>	DELETE UP TO AND INCLUDING THE NTH OCCURENCE OF
			<char>. NO DELETE IF NOT FOUND BUT LEAVES YOU AT
			END OF LINE.

	<n>N		SEARCH TO nTH NUMBER (A NUMBER IS ANY CONTIGUOUS
			SEGMENT OF DIGITS). END OF LINE IF NOT FOUND.

	<n>#		SEARCH TO nTH NUMBER. IF FOUND ASK FOR TEXT MACRO
			NAME, AND STORE STRING OF DIGITS IN IT.
			THIS MACRO MAY NOW BE CALLED WHERE EVER YOU NEED
			A NUMBER!

	<n>U		SEARCH TO nTH NUMBER AND DELETE IT.

	<n>F<string><t>	SEARCHES FOR THE Nth OCCURENCE OF <string> AS A
			SUBSTRING OF THE CURRENT TEXT. IF FOUND AND
			t=ALTMODE THEN DELETE THIS OCCURENCE <string>
			OTHERWISE DONE. IF t≠ALTMODE THEN t MUST = CRLF.
PC?????			IF STRING IS NULL, NO SEARCH IS DONE
D			IF STRING IS NULL, THEN "SEARCH STRING" IS USED
			UNLESS IT IS ALSO NULL IN WHICH CASE NO SEARCH
			IS DONE.

		HERE IS HOW THE MATCHING IS DONE:
			IF THE FLAG FOR "SPACES" IS OFF (DEFAULT EXCEPT AT DEC) THEN ANY
			SPACES IN EITHER THE STRING OR THE SEARCH STRING
			ARE IGNORED, OTHERWISE THEY ARE NORMAL CHARS.
			↔ IS CONVERTED TO A SPACE. IF THE FLAG "EXACT"
			IS OFF (DEFAULT) THEN LOWER CASE CHARS ARE CONVERTED
			TO UPPER CASE.
			THE FOLLOWING SPECIAL CHARS ARE CURRENTLY RECOGNIZED:

		NODEC	DEC
		|	|	BEGINNING OR END OF LINE.

		↑T	?	ANY CHARACTER.

		≠	↑E	INVERT MATCH CONDITION ON NEXT THING.

		∞	↑N	ANY NUMBER OF NEXT THING WILL MATCH, INCLUDING 0.
				SMALLEST NUMBER OF CHARACTERS NECESSARY WILL BE USED.

		≡	↑↑	QUOTE NEXT CHARACTER.

		$	$	(DOLLAR SIGN) MATCH ANY LETTER.

		%	%	MATCH ANY DIGIT (0-9).

		↓	↓	MATCH ANY ALPHANUMERIC.
EDIT MODE:
THE EDITOR STARTS UP IN "EDIT MODE".
LEGAL COMMANDS ANY TIME ARE:

	εP	ENTER PIN MODE.

	εT	ENTER TEXT/PROPERTY MODE.

	αI	ENTER INSERT MODE. THE CURRENT POINT IS SET TO THE FIRST
		POINT OF THE BODY AND THE CURSOR IS PUT THERE.

	ε$(ALTMODE)	RETURN TO EDIT MODE!

	αP	SET A PIN. POSITION THE CURSOR FIRST. YOU WILL BE ASKED
		"PIN NAME?". TYPE A DECIMAL NUMBER. THE PIN WILL APPEAR AT
		THE CURSOR POSITION.
		YOU MAY ALSO FOLLOW THE THE PIN NAME WITH:

			</<B>><-<H,L,>>

		<> PAIRS INDICATE OPTIONAL ARGUMENTS. THE <H,L,> MEANS
		H, L, OR NOTHING. THE /B SETS THIS PIN AS A BUSSED THROUGH
		OCCURENCE OF THE THE PINS WITH THIS DEFAULT NAME. / WITH
		NO B AFTER IT CLEARS THIS. A BUSSED THROUGH PIN IS THE SAME
		PHYSICAL PIN, BUT THE PIN # WON'T PLOT.  -<H,L,> SETS
		THE DEFAULT POLARITY TO HI, LOW, OR NONE RESPECTIVELY.

	αT	PLACE TEXT (SEE EDIT TEXT/PROPERTY MODE).

	αY	PLACE NEW OR CHANGE OLD PROPERTY (SEE EDIT TEXT/PROPERTY MODE).

	βY	CHANGE OLD PROPERTY, CLOSEST MATCH ON NAME.
		(SEE EDIT TEXT/PROPERTY MODE).

	αE	EXIT THE EDITOR. (RETURN TO DRAWING LEVEL AND MODE LAST
		USED THERE.)

	EXTENDED COMMANDS IN EDITOR:

		DISLOC	ALWAYS DISPLAY LOCATION TEXT ON EACH INSTANCE
			OF THIS BODY IN DRAWING.

		-DISLOC	DON'T DISPLAY LOCATION TEXT ON AN INSTANCE OF
			THIS BODY IF THE OFFSET IS FOLLOWING THE DEFINITION.

EDIT MODE COMMANDS:

	DURING EDIT MODE, A STAR INDICATES THE CLOSEST POINT IN THE
	BODY LINES FOR USE WITH αR, αM, βI, αD COMMANDS.

	α"	ASKS FOR A MACRO NAME, THEN DEFINES THAT MACRO TO BE
		THE NAME OF THE BODY YOU ARE EDITING.

	ε"	SAME AS α" BUT MAKES MACRO OUT OF DIP TYPE NAME
		INSTEAD OF BODY NAME.

	αM
	βI	ENTER INSERT MODE. THE CURRENT POINT IS SET TO
		THE POINT WHICH PREVIOUSLY HAD A STAR ON IT.

	αG	"GET" A BODY DEF BY NAME AND ADD IT TO THE END OF THIS BODY.
		YOU WILL BE ABLE TO MOVE IT(NORMAL CURSOR MOVING) AND
		ROTATE IT (USING αO) UNTIL YOU TYPE SPACE. ALTMODE WILL
		FLUSH THE BODY WITHOUT PLACING IT.

	αD	DELETE "CLOSEST" POINT.

	αR	CHANGE FLAVOR OF CLOSEST POINT. WAITS FOR + OR -.

	βN	MOVES THE CURSOR TO THE CURRENT INITIAL LOCATION OFFSET AND
		THEN LETS YOU MOVE IT UNTIL YOU TYPE SPACE OR ALTMODE.

INSERT MODE COMMANDS:


	THE CURRENT POINT ON THE BODY LINES FOLLOWS THE CURSOR UNTIL
	YOU LEAVE INSERT MODE.

	λ+	THIS TERMINATES THE CURRENT VECTOR FOLLOWING
		THE CURSOR. AND STARTS A VISIBLE ONE FOLLOWING IT.

	λ-	SAME AS + BUT AN INVISIBLE VECTOR IS STARTED. (FEAR NOT
		YOU CANNOT WASTE SPACE BY PUTTING TWO INVISIBLE VECTORS
		TOGETHER.)

	αR	WAITS FOR A "+" OR A "-" THEN CHANGES THE VECTOR "LEAVING"
		THE CURRENT POINT TO THE CORRESPONDING TYPE.

	αD	DELETE THE CURRENT POINT. THIS WILL LEAVE A VECTOR JOINING
		THE TWO NEIGHBORING POINTS THE TYPE WILL BE THAT OF THE
		ONE ALREADY ON THE LAST POINT. HOWEVER THE CURSOR IS ON
		THE NEXT POINT.

	SPACE	MOVE THE CURSOR TO THE "NEXT" POINT.

	BACKSPACE MOVE THE CURSOR TO THE "PREVIOUS" POINT.
TEXT/PROPERTY MODE COMMANDS:

	A STAR INDICATES THE CLOSEST TEXT/PROPERTY.
	AN INVISIBLE PROPERTY CANNOT BE CLOSE TO THE CURSOR
	UNLESS "XIDENTS" HAS BEEN DONE (MAKING IT VISIBLE).


	αT	PLACE BODY TEXT AT THE CURRENT CURSOR POSITION.
		THE SIZE KLUDGE IN DRAWING MODE APPLIES HERE.
		WHEN TEXT IS PLACED, THE OFFSET IS CALCULATED TO CENTER
		THE TEXT OVER THE CURSOR POSITION. THIS OFFSET IS
		MAINTAINED WHENEVER THE TEXT IS CHANGED, UNLESS YOU
		EXPLICITLY MOVE IT YOURSELF.

	αY	ASKS FOR PROPERTY NAME, THEN ASKS FOR TEXT TO ASSOCIATE
		WITH PROPERTY. IF PROPERTY DOES NOT EXIST, TEXT IS PLACED
		AS IN αT, BUT MAY BE REFERRED TO BY ITS PROPERTY NAME.
		IF PROPERTY EXISTS, ITS TEXT IS REPLACED BY THE TEXT
		YOU TYPED. IF EITHER THE PROPERTY NAME OR THE TEXT IS
		ENDED WITH ALTMODE (ε$) NOTHING IS DONE.

	βY	ASKS FOR PROPERTY NAME, YOU DO NOT HAVE TO TYPE THE
		FULL NAME OF THE PROPERTY, ONLY ENOUGH TO UNIQUELY
		IDENTIFY IT. IF THE PROPERTY IS FOUND, THE FULL PROPERTY
		NAME IS TYPED OUT. THEN YOU ARE ASKED FOR THE NEW TEXT
		TO ASSOCIATE WITH IT. AGAIN ALTMODE (ε$) GETS YOU OUT.

	αK	STOP DISPLAYING TEXT/PROPERTY. IF TEXT, THIS DELETES IT.
		IF IT IS A PROPERTY, IT IS NO LONGER DISPLAYED, BUT THE
		BODY DEF STILL HAS THAT PROPERTY. PROPERTIES WHICH ARE
		NOT BEING DISPLAYED WILL BECOME VISIBLE UNDER "XIDENTS".

	αD	DELETE TEXT OR PROPERTY COMPLETELY.

	βD	IF PROPERTY, CHANGE TO ORDINARY TEXT. IF INVISIBLE,
		THEN CHARACTER SIZE IS SET TO THE STANDARD.

	αM	MOVE THE TEXT/PROPERTY. THE TEXT FOLLOWS THE CURSOR
		UNTIL YOU TYPE A SPACE.

	βM	CHANGE TEXT OFFSET FROM TEXT LOC.
		AFTER THIS COMMAND, OFFSET IS NOT AUTOMATICALLY
		RECALCULATED WHEN TEXT IS CHANGED.

	εM	GRAB TEXT TO CURSOR. LIKE αM, BUT TEXT MOVES TO CURSOR
		INITIALLY.

STANFO	αZ	LINE EDIT TEXT. LINE EDITOR CURSOR STARTS AT
		BEGGINNING OF LINE.

STANFO	αQ	LINE EDIT TEXT. LINE EDITOR CURSOR STARTS AT
		END OF LINE.

	εZ	RECALCULATE OFFSET FOR TEXT TO CENTER IT OVER
		MOVE POINT. TEXT CHANGES WILL AGAIN UPDATE OFFSET.

	α"	STORE TEXT INTO MACRO.

	β"	STORE PROPERTY NAME INTO MACRO.

	αF	FIND NEXT MARKED TEXT STRING.

	βF	ASKS FOR STRING, THEN FINDS AND MARKS ALL PROPERTIES
		WHICH HAVE THE STRING AS A SUBSTRING OF THEIR PROPERTY
		NAME.

	εF	ASKS FOR STRING, THEN FINDS AND MARKS ALL TEXT WHICH
		HAS THAT STRING AS A SUBSTRING.

	EXTENDED COMMANDS FOR EDIT TEXT/PROPERTY MODE:

		TMOVE	MOVE TEXT/PROPERTY OFFSET USING CURSOR
			MOVE COMMANDS. THIS STOPS AUTOMATIC
			RECALCULATION OF TEXT OFFSET.

PIN MODE COMMANDS:

	A STAR INDICATES THE CLOSEST PIN.


	αD	DELETE CLOSEST PIN
	
	αM	MOVE THE CLOSEST PIN. CURSOR IS PLACED ON PIN
		AND PIN FOLLOWS IT UNTIL SPACE IS TYPED.

	αN	ASKS "NEW PIN NAME?", THEN CHANGES THE NUMBER OF THE CLOSEST
		PIN TO WHAT EVER YOU TYPE. SAME RESTRICTIONS ON NUMBER
		AS WHEN PLACING NEW PIN.

	βN	ASKS "LOCATION # (0-7)?" IF YOU TYPE "?"<CR> YOU WILL GET
		A LIST OF THE OPTIONS. THIS NUMBER CONTROLS WHERE THE PIN
		NUMBERS ARE SHOWN.
		PIN DISPLACEMENTS ARE ACCORDING TO THIS CHART.
		0=UP RIGHT	4=DOWN LEFT
		1=UP		5=DOWN
		2=UP LEFT	6=DOWN RIGHT
		3=LEFT		7=RIGHT

	εN	USED TO BE "NIPPLE BIT". NOW IT IS MORE GENERAL.
		YOU MAY NOW TYPE X,Y (OR JUST X) OFFSET FOR PIN NUMBER.
		THE UNIT IS 1 CURSOR STEP. THE VALUES MAY BE SIGNED.

	αF	AUTOMATICALLY CALCULATES LOCATION #. IF IN OUTSIDE MODE
		THEN WILL TRY TO PUT IT OUTSIDE, ELSE INSIDE. INSIDE IS
		STARTUP DEFAULT.

	εF	DO αF TO ALL PINS OF BODY.

DEC	βP	ASKS "POLARITY?" TYPE H OR L TO SET THE DEFAULT ON THE
		NEAREST PIN. TYPE <CR> TO CLEAR THE DEFAULT.
		TYPE ε$ TO ESCAPE WITH NO CHANGE.

	EXTENDED COMMANDS FOR EDIT PIN MODE:

		FLPIN	ASKS FOR STRING, AND MARKS ALL PINS WHOSE
			PIN NAME CONTAIN THE STRING AS A SUBSTRING.

		FLPNEXT	FIND NEXT MARKED PIN.
MACRO'S:

	α:		EQUIVALENT TO ;R0<cr>

	λ;<-><n><l>	MACRO COMMAND. <-><n> IS ARGUMENT, <l> IS COMMAND.
			<-> IS OPTIONAL. IF NOT AT COMMAND LEVEL (STAR PROMPT),
			YOU MUST USE AT LEAST 1 <ALT> BEFORE THE ";".


MACRO COMMANDS:

	S	STOP ALL MACROS IMMEDIATELY. THIS IS WHAT TO DO WHEN
		YOU ARE INSIDE A MACRO AND YOU DECIDE YOU HAVE SCREWED
		UP.

	H	SUBSTITUTE THE VALUE OF A VARIABLE AT THIS POINT.
		ASKS FOR THE VARIABLE NAME. TERMINATE THE NAME WITH
		A CARRIAGE RETURN.

	I	INPUT FROM THE TTY. THE NEXT CARRIAGE RETURN TYPED
		SIMULATES TYPING ";R0".

	Y	ASKS FOR A CHARACTER, READS INPUT FROM
		DSKIN FILE UNTIL THIS CHARACTER IS SEEN. THEN TURNS
		OFF DSKIN AND PROCEEDS TO TAKE INPUT FOLLOWING THE ;Y.

	P	START TEMPORARY MACRO.

	M	START PERMANENT MACRO. EVERYTHING FROM HERE TO THE NEXT
		<CR> WILL BE TAKEN TO BE THE MACRO NAME. ARGUMENT OF 1 BEFORE
		M WILL CAUSE "SMACRO" TO HAPPEN TO THIS MACRO.

	D	LIKE M, EXCEPT DOESN'T EXECUTE MACRO DURING DEFINITION.
		IF REPEAT COUNT IS GREATER THAN 1, THE REST OF THE
		ITERATIONS WILL BE IGNORED ALSO. ARGUMENT OF 1
		WILL CAUSE "SMACRO".

	R	END MACRO. EVERYTHING FROM HERE TO THE NEXT <CR> WILL BE
		TAKEN TO BE THE REPEAT FACTOR(INCLUDING DEFINITION OF
		MACRO). FOR PERMANENT MACRO'S THE REPEAT FACTOR BECOMES
		PART OF THE DEFINITION. AS A SPECIAL HACK IF THE CHARACTER
		"#" IS USED INSTEAD OF A NUMBER, THE NUMBER OF MATCHES
		FOUND BY THE LAST "F" OR "XFDIP", ETC. COMMAND WILL BE USED.

	C	CALL MACRO BY NAME. EVERYTHING FROM HERE TO NEXT <CR> WILL
		BE TAKEN AS THE MACRO NAME.

	A	FOLLOWED BY:

		N,M,I

		SUBSTITUTE AT THIS POINT THE NUMBER N AND INCREMENT BY M
		EVERY TIME THROUGH THE MACRO I LEVELS UP FROM THE CURRENT
		ONE. N AND M MAY BE NEGATIVE. I, OR M AND I MAY BE LEFT
		OUT, IF SO DEFAULT I WILL BE 0 DEFAULT M WILL BE 1.
		IF A <-><N> ARG PRECEDED THE "A", IT WILL BE USED
		AS THE MINIMUM WIDTH OF THE RESULTANT DIGIT STRING.
		<-> IS CURRENTLY IGNORED.

	N	SAME AS ";A" EXCEPT ALWAYS SIGNS THE NUMBER, EXCEPT FOR
		ZERO WHICH EXPANDS INTO A NULL STRING!

	L	FOLLOWED BY:

		<NUMBER><CR>

		ADDS 100 (OCTAL) TO NUMBER AND RETURNS IT AS A LETTER.
		IF "D" PRECEEDS THE NUMBER, G,I,O, AND Q ARE SKIPPED.
		THE "D" STANDS FOR "DEC"

	T	WILL REQUEST TTY INPUT AT THIS POINT.
		MUST BE TERMINATED BY ";R0".

	U	LIKE ;T IF INPUT NOT COMING FROM MACRO, OTHERWISE
		IT IS A NOOP. THIS IS USEFUL WHEN YOU GET INTO
		A MACRO AND DISCOVER YOU WANTED TO INITIALZE A VARIABLE
		OR SOMETHING. IT ALLOWS YOU TO DO SOMETHING WHILE YOU
		ARE TYPING IN THE MACRO WHICH WILL NOT BE DONE ON
		SUBSEQUENT ITERATIONS.

	V<n>,<macro name><cr>

		THIS CAUSES TTY INPUT TO BE EXECUTED AND STORED IN THE
		MACRO WHOSE NAME YOU TYPE, IF THE NEXT TIME THIS COMMAND
		IS PROCESSED, ANY OF THE MACROS BETWEEN THE CURRENT LEVEL
		AND THE LEVEL n UP FROM HERE (INCLUSIVE) ARE NOT IN THE
		FIRST TIME THROUGH THE LOOP, A ";C" IS DONE WITH THE MACRO
		NAME INSTEAD OF TAKING IN THE DEFINITION.
		ANOTHER WAY OF LOOKING AT THIS IS THE CONSIDER THE MACRO
		A VARIABLE ASSIGNED THE FIRST TIME YOU ENTER MACRO LEVEL
		n UP FROM HERE.

	F<n><flag><cr>
		<flag>::=	<flagname> | -<flagname>
		<n>::=		<macro level>

		IF <flag> IS TRUE, ALL CHARACTERS ARE EATEN UNTIL A MACRO
		LEVEL <n> LEVELS UP FROM THE CURRENT ONE IS LEFT.
		THE FOLLOWING FLAGNAMES EXIST:

		FALSE		ALWAYS FALSE (USE -FALSE FOR TRUE)
		CLOSES		TRUE IF CLOSE TO SOMETHING
		FIND		TRUE IF LAST "αF" FOUND SOMETHING
		AFIND		TRUE IF LAST F, S, K, N, U, OR # COMMAND IN
				ALTER MODE WAS SUCCESSFUL.
		ENDMUL		TRUE IF LAST αH INCREMENTED A MULTI STRING
				VARIABLE OFF THE END (VALUE OF STRING IS NOW NULL).
		DSKEND		TRUE IF NO DSKIN FILE OPEN. TO FACILLITATE THE
				USE OF THIS FLAG, END OF FILE WILL LOOK LIKE A MATCH
				FOR THE CARACTER IN ;Y. THIS IS SO CONTROL WILL
				REVERT TO A MACRO ON END OF FILE.
		LSTEXP		TRUE IF LAST ;X RETURNED A NON-ZERO RESULT
		AEOL		TRUE IF AT END OF LINE IN ALTER MODE
		ABOL		TRUE IF AT BEGINNING OF LINE
		EDGE		TRUE IF LAST CURSOR MOVE HIT SCREEN EDCE
				(NOT TRUE IF IN -WINDOW MODE)

	E<macro name><cr>

		EVERYT@ING UP TO THE FEXT ε: IS STORED
		IN THE LAMED MACRO AFTER EVALUATIOF BY MACRO PRMCESSOR.

	X<expression><cr>
¬
		THIS ALLOUS ARIT@METIC EXPRESSIONS TG BE EVALUATED. DHE
		MPERATORS  +", "-", "/",  *" ARE @%∃π∨∂≥%1βλX↓'+∧[∃1!%M'∪∨≥L~∀$Ljεeα∀)α~>∀j⊗⊃α-~&*≥∧jεR∞DJ2
α∧
&JM∧z→↓	b↓y	α⎇⊃↓	!αI	84PH&NRr∩εJ"αBJ⊗≤*∩,h8R∧M4
U≤,D	∀r∧Zh∀e,~I∀lraQ hP↔WF∞w∀6F∂%g`hPQ!⊂M∀ZJU∀u4λ∩¬≥J)∀t:	xb∧$_y∃%~
(U¬∀X8Tu$→hr¬$λT∧$0r3(→λ⊂shH#"B!→qH∃	λαP!d⊂i aj⊃i⊂&dS*iP≠
↔εEεB∧Q↑ !ny cHar.>

		IF CHAR IS NOT A LETTER, DOES 9=.
		ELSE CONVERTS LETTER TO NUMBER USING SEQUENTIAL NUMBERS
		FOR THE DEC ALPHABET.

	G<string><cr>
¬
		CONVERTS ALL LEPTERS IN <STRILG> TO LOWER CASE.

	↑<ANY CHAR.>

		RETURNS CHARACTER WHOSE ASCII CODE IS 100 LESS THAN
		THAT OF THA CHARACTER TYPED.LOWER CASE IS COJVERTED
		TO UPPER CASE BEFORE PROCESSING.THIS COMMAN@ ALLOWS
		TYPIN OF CONTROL CHARACTERS BY USING THEIR LETTER.
		FOR INSTANCE <CONTROL>C CAN BE GOTTEN @Y ;↑C.

	O<string><cr>

		IF NOT TAKING INPUT FROM TTY, PRINTS STRING ON TTY

	MACRO'S MAY BE NESTED TO A LEVEL OF 102 DECIMAL THE ONLY REQUIREMENT
	BEIN@∞A)!β(A¬π⊂A≠¬π%≡A
∨∃)β%≤Aβ≤↓#+β0A≥+≠	$A∨_@w OLAβ≥λw$O&8~∀→⊃∨.↓)≡A	<A∪(@4ZA!ε↓πβ%	L~∀~∃MiCeh↓QKeJ↓oQK\↓s←jA!CmJA
←[aY∃iKYr↓MS]SMQKHA]SeS]≤~∃s←UdAaF↓GCeH8~∀~∀%3←jA¬eJA]=nAS\↓iQJAAεAae=OeCZ8A3←j↓[kgh↓]←nA≥K]Ke¬iJ~∀PAaY←PAMSY∃f\A)!J@dA=kiKd↓aYC]∃f@QG=[a←]∃]hAC9HAg←1IKdR4∃C]H↓iQJ@HAS]]∃dAaY¬]Kf@!a←oKHAC]H↓Oe←k9HR\~)3←jAMQ←kY⊂Aier↓i↑AkMJAiQ∀AM←Y1←oS]≤AM←e4AM←d↓aY←h↓MSYK9C[Kf8~∃]⊂AiQJ↓]C[J↓oSiPEεDA→←dAG=[a←]∃]hX@	&DAM=dAg←1IKdXE D~)M←dAA←oKd0AC]HE∞DA→←dAOI←k]H8~∀∪)<AOK]∃eCiJ↓iQJA
←[a←9K]hA¬]HAg=YIKd↓aYC]∀AaY←Qf~∃O∃hA←\↓iQJA¬aae←AeSCi∀AgSI∀AC]H↓gCr@qGieXxySKi∧⎇.\AQQK\~)isaJ↓iQJA→SYK]¬[J\~(∪≥←n↓M←dA%]]Kd↓aYC]∃f\A∪_As←j↓oC]h↓C]si!S]NA	kh~∃
YKCe¬]GKf↓S\As=kdAS9]KdAAYC]KLXA')= AC]⊂AgKJ↓%!⊂\↓∨iQKIoSgJ4∃s←j↓]←nAQsaJA%≥≥$qGd|AQ↑AiQ∀AKqi∃]IKH↓gGC]9Kd\AQQSfA⊃KYKi∃f~∃C1XAYS9KfAC9HAa←%]ifA∃qGKaPAIS`↓aS]f↓C]HA→KKHAQQe←k≥QfXA¬]H~∃MKifAQQJAa¬HAisAJAM←HAiQKMJAi↑d@QG1KCeC9GKfR8AπkeIK]iYdAiQJ4∃aYC9JAG←9]KGi%←]fA¬eK\OPAS]I%GCiK⊂AErAQQJAC	gK]G∀A←LAACIf\4∀∪)↑↓[CWJ↓iQJA%]]Kd↓aYC]∀AaY←QfXAkMJAiQ∀AKqi∃]IKH↓[←IJ4∃!!→=(AG←5[C]H0AoQS
PACg-fAM←HAiQJ↓aYC]∀A]k[	KdXAQQK\AQQJ~∃→SYK]¬[J\AQQJAa1C]JA9k[EKHASfAQQJAg¬[JACLAiQJ↓←]JAe←jAO¬mJ~∃Q↑ACiQCGPAQ↑AiQ∀AaYC9JAS\↓iQJA→Segh↓aYCG∀\~∀→≠∨%∀A!εA
β%	&ZZA↓
 ~∀∪9←nAs=jAQCYJ@hAAY←hA→SYKfQSLA9←hAg∃JA%! R\A≥=nAek8A!π 8~∀~∀%)QJA→←YY←]S]NA%]ISG¬iKfAAe←Oe¬ZAae=[aif↓S\AkAaKdA
CgJX4∃iQK8ABAI∃gGeSAiS←\↓←LAs=kdAe∃ga←]MJAS\↓Y←gKHAGCg∀\~∃∪PASfAMkOOKMiKHAQQChAe←jAeU\A!π@A←\A∧AiKY∃isaJ↓oQK\↓I←S]≤ABA)I.~∃eU\XAC9HAgCYJAiQ∀A←kiAkhAM=dAie¬]gMKIS]NAQ↑ABAAYC]]%]NAg!KKh\4∀~∃/!K\AaI←OeC4AgiCIifAk@XASh↓CgWfh~∀~∃=+)!+PA≠∨	∀Q&R}4∀~∀∪%LAs←TAeKgA←]H@λ}DXAQQJAM=YY←o%]NAY%ghAo%YPAE∀Aisa∃Ht~∀4∃π⊃βH∪

∃π(~∀|∪)3!∀A)⊃∪LA→∪'P~∀bZd∪'(↓'πβ→∀A
βπQ∨$~∃D∪#+∪
⊗@Qβ	¬%-%β)
AA%∨≠!Q&R\~)≤∪
→U'⊂Aβ92A)a(A
%=~A∪≥A+(A
%→
~∃h∪	→∃)
A
%→
Aβ→)$AA→∨(~)ε∪!→=))$↓∨+)!U(~∃%
$p`↓∨+)!U(~∃0%1∂ A=+)!P~∃∞∪I+≤A0↓!%∨∞↓β+)∨5β)∪π¬→→2~).∪'!=∨_A0↓∨#)!U(X@EHA1&D↓/⊃≤↓β→_A⊃∨≥
~)
∪1Q%αA)!∪π⊗A1∪∃&Q/∨%-&A¬M(A∨≤↓1∂ R4∃&∪9β¬→
↓%')¬%(Aπ¬!β¬∪1∪)2~)$∪%∨Qβ)
AA→∨))∃$A∨+Q!+(~)(∪∂I¬$A=+)!+P~∃~∪5β A%∃)∪π→∃&~∃α%β	λAM3≠¬∨0A	
%≥∪)∪=≥&~∃d∪≠β↔∀A	%∪1_A)βA
A
∪I'(A)%≠
A)!%∨+∂ ~∀~∀%3←jA5CrAieaJAC9rA←L↓iQJA
QCeC
iKef↓S\Ai!JAMSIghAG=Yk[\4∀∪CY0A←\A=]JAY%]JXAQQJAaI←OeC4AoSY0AoCe8As←j↓←LAC9r~∀∪
←]MY%GiS]≤A[←I∃f\~∀4∀∪⊃KIJASf↓BAEe%KLAI∃gGeSAiS←\ch of the modes:

?	Obvious

C	This causes a plot to be made on the calcomp plotter.

F	This causes a file to be written on the current area
	with the extension 'F80'. This file when copied onto
	a magtape (see description, end of page), will produce
	FR80 microfilm of the pc card.

X	Instead of driving the calcomp plotter, plotter commands
	go into a file with the extension 'PLX'. This file when
	processed by the 'X' program wilh produce XGP output of
	your pc card.

G	This specifies that when the first plot is done, the
	program should link directly to the 'X' program, which
	will then produce the XGP output.

W	This causes output to the XGP to be generated and 'X' to
	be run, but 'X' writes its output on the disk again. Later
	when you have run all your Cards through 'PCP', you run
	'XS' which finds, prints on the XGP, and deletes all the
	temporary files. This savEs time and papEr on the XGP.

S	This command, intended for use exclusively with calcomp
	plotper outpUt, plots a cross 2"above the intial pen
	`oqition, and du@IS]NAQQJAaI←GKgMS]NA=HAiQ∀AaY←PX~∀∪¬GGCg%←]CY1rAgCYKfAB↓G←eJ↓S[CO∀@QSh↓oSYX↓CgVA!←nA←→iK\AQ↑~∀∪⊃↑AiQ%fR\A%LAM←β⊃βO?n)βK↔∂≠?9βN{Uβ7/≠QβO&KQβ␈3↔I1εk↔K↔gH4('ε{O'SN{9βSF)βWfcO↔g*β?9β&C∃βC.qβ∂π↔∪π'∨*β?[↔∩βS#∃ε≠K?O_h('πv!βKWrβ≠'3*β∂π3f+⊃↓
∧bRNε2r∩6A∩aβ←#N≠!β←Nc1β∂}sS';.(4('&C∃βCf{Qβ≠⊗{5βSF)βC3∞≠∃β←F+K∃βO!β3↔7!β?≠2p4(4U⊂&S#O→β←'faβ∂π/≠∃βSF)βC3␈!βS=ε∪∃βK␈#πS↔"↓eAβ&+∨K↔/→α∞∞:p4(4U &S#O→β←'faβ←KO#∃β¬ε3'3∃π;'S!π##∃β/CS↔;≡K?9↓<jε≥≥rα←#↔ph('∂␈β'↔⊃π#=β¬εkπ∨S∂β∃↓#≡+∃β;/CQβC∞;∃%β&C∃βS∂β∃β∂∞qβ∀hP'O↔w!βS=¬"J]βNqα1:
qβπ;"βC3?'#↔⊃β}qβ≠'fiβ?9π##↔'∩β∨↔K⊗+H4(Oβ3?S&+IβOO≠S↔5rαS#'~βπ3Ozβ∨↔;/∪πS↔~β¬↓≡dz≥≥β6K3∃β>C'∂ hP'O#␈+3⊃β⊗)αb≡α;⊃βπv!βOS.≠-β'rβS#∃πβ3?Qεc?≥β⊗{?-8hP4*4M;#↔9π##'Mεk?∪∃εKMβO.c↔∂S.!1βSF)βCK};Kπ5π;'31εO-β6{H4(Oβπ⊃β'KC↔Mπ;#'∂Bβ←π;"βS=β⊗)βS#*βOπ7*β←#↔.aβC?~βπMβ∞s?S#/⊂4('ε⊃βSOβ∃1β␈⊃βS#*βOπ7*βπMβ≡{7∃βε{O'SN{9β;␈!βπ∂≡+OO'⊗c∃βHh('C∞!βSgε+Mβ∪O∪↔∂SgI84(hR∧&SFKMβ∂∂+O↔M¬α∞Aβ&yβπ∂≡+CQβ/CSK¬π≠g7}aβ∪↔6K;'SN{;Mβ␈##↔HhP'S#∞qβS#*βOSπv#πK⊃ε{;↔Mph(4*HJ¬β∪⊗K31β&C∃β6K3∃βO→β7π&)β≠K}iβS#*β≠'K∨!β≠'f)βCK}≠↔OO.!84(hR'→βN{UβO.c↔∂Qε∪?S!α∩Q	β∞s⊃↓
J⊃β7?&+M1β&C∃βS↔9β?W'βWQβ>K31β⊗)β¬β'∪'30hSC3?"qαS#∂!β'Mbβ;=βfK;↔MbβS↔c"aβ?Iπβπ∪MεK∃β'∪π←9ε;⊃β&{;WQπβπ∪MεK∀4Wβ3?S&+⊃βπ"βS#∃εc?∂π&K?9β}1β↔π≡Aβ∪KNc1β#}c∃84Ph*'→πK?Uβ≡+3↔∂&+⊃βSF)↓
Q∩β?WSπ+Qβ7}#∃h4Ph)↓↓αβπ;⊃α∩5	βn{∪∃0hP4($LK→βg␈)β#π6)β¬βε⊃βSOβ∃β'rβg?W∩βC
β≡K⊃1ε;⊃βN{Uβ←∞sP4(HKS=β/≠∃β?v)β?→π##∃β∨#π;∪∂∪⊃βK/#'∂3/→↓#%v)9β;␈∪SK?vK∂L4PH'Sπ⊗;↔Q%bβS#'~βπ33␈;Mβg␈)βS=εkπAβ&C∃βC∞!βSgε)β';&yβ∧4PH'∪'63↔K↔w!β←#.+1βC␈≠'S'}qβS#∞qβWO.19αN1βg?*βπ;O>+H4(HI
e	bβg?UεK∃β∂≠/↔⊃π##∃β6{33?>K;≥hhP4(&∀*R&∞d)α6ε¬α&:≥∧b&Z⊗~α~>I∧*Z⊗I∧J9αRDJMα∞⎇∩∃α&l
≡∃∧hP&Bε"αRfB*α:V6∀*I|4Ph($&F+K∃βN{UβK/≠C?;"β←'SBβS#∃πβπ⊃β'KC∃βw+7↔∩β←#'≡Aβg?(h($'≡+Qβ'rβS#∃πβ
βC⊗{≥9αN1βg?*βK↔Oε{;⊃↓f≠Iy1πK?Uβ>+Qβ?/!84(hP&↑",*1αB⎇→|4(hP$&;␈9βg?*βS↔3bβ←#'≡Aβ←#.+1βC␈≠'S'}qβg?*β←'OBβO↔3.≠S↔⊂hP$'≠␈⊃βS#O→βCπ"βSgC*qαS#.qβg?*β3??αβπ∂ZβS=β&C∃βC∞ 4($O#gC∃πβK?7π!84(hQ↓↓↓ε;⊃↓∀		β7}#∃04Ph($&N1βg?*βπK∃π+O';:βπ;eε≠#πK∞≠S↔K~β;?QεK9βSF)αRJ8h($'∨#π;∪∂∪⊃β∂FKπ∂&+IβO/!↓#O.)αJBBβ≠?Iε≠#πK∞≠S↔HhP$'O/!%1β≡eαef≠Iy9∧K→βg␈)βOπJαe1β&C∃β≠}c3?←Ns≤4(HK←'3bβ∃β∂≠/↔⊃Ph(&NLj
>1∧"⊗~&tJR&>u→α2&4)α~>∩α⊗Z⊗∩↓"&9¬""&M∧~>J∃∧J6ε≡*I84(L∩∃αN-∩∃αRzα6ε.*α¬αN\*R∞!∧z→αRD)αNfl∩>1αLr∩&∞
"&:≥¬""∃↓∀!	α∞|"∃84PJ⊃YAxh($&'KC∃β&C∃βONs∨3∃ε≠#πK∞≠S↔Iε3?Iβ&C'Mβ≡{∪∃↓Fs=↓s∨⊃y%8hP$&πwIβCK/3'?W≡ceβπ∨≠'∨;.!β∂?&+Mβ←Nc1β*βCK'w#↔⊃β6{33?>+⊂4(HKS#↔O⊃β∂#∂∪π∂S/⊃1βSF+9βg␈)β←'faβ∃εO/↔"βS=β∂≠O'∨rβS#∀hP$'≠O∪OQβ.sπOON;;↔⊃ε≠?∪∃rαSgC*βS#∃ε≠#πK∞≠S↔IπK?Uβ/≠↔⊃β>C↔84PH'g?*βC3π≡+⊃βSF)βS↔G!β'9π##∃α∧→βCK}984(L!YE|hP$&SFKMβ←Nc1β∂}sS';.)βW;&K1βg␈)βπ;∨;↔I↓f≠Iy8hP4*'2βg?Uπ≠↔3↔∨#↔⊃β&C∃↓
2⊃β?W'βWQβn{∪∃hhP4(&
!α~IC↓αN∞b∃α>2↓M9]∧2Jε6*α&Mα∩>VQβ⊃JaE:p4(&5⊃aAα≤~ε2∃S	A↓|hP4($M##'MεKMβ↔F∂S3Jβ←#π"β'Qβ≡+↔7Mbβ'→βN{WIβ≡K⊃βO→βO?n+←#π h($'≡kπ33/⊃βS#∞qβS#O→1βg␈)β7πJβWO∃ε	β3π⊗;↔Iβ≡≠π3∃rαWO∃∧
&⊂4PH'S=ε≠π3∂.cπS∃π##∃β∂βCK?π∪'πS*βO∂πf)9↓s∨⊃yβ←Nc1β∨/!βg?(h($%≠9↓#O≡3∃β}1↓M9:I84(hP&~IC↓α~Jj∃α&~↓IJa984(hP$&SF)β≠K∞k∃βOOS∃β←Nc1β*βCK'w#↔⊃βN1βg?*β∨'[*β¬βO≡3∃β␈##↔Iπ##π9β→]84Ph*N∞b∃α~~R>Ixh(4(M≠∂π3*β?→↓
β'Mβ⊗+π1β≡Kk∃↓GK?Uβ>+QβSFKMβ'2βg?Uπ#gC∃βc∂Iyε3?;*I84(L#?9∨"βWO∃ε;gSFK;≥β.cO∃βN1βg?*βπK∃εkπ/'v9β¬α%∩]βCf{Qβ?∩βπ9α5⊃a@4PKC3?"qαS#O→β7πJβ∃β/≠↔⊃β&yβ7π↑)β∪↔&'1βεc?SMph(4*∧zN&RM2∃αaeIα>~5~⊗Q↓DJ9α&t~"⊗Mbα∩⊗∞Ljε1α∧z&:Q∧z-¬%xh(4)α↓↓↓↓ααS#'~β7WO"β∃β/≠↔⊃β&yβ∨↔v+KπS*αRJ]πβ3?Qπ#πC↔~aβπ;"α6∞
ε#K'3bβSπC/→84)α↓↓↓↓αα?SBβOgO&+7MβF[∃↓αaAβπ βS#∃εc?←↔∩β3↔≠"q↓αSF)βOS∞s∪πK"β≠'3jβ←∃β∂∪∀4)α↓↓↓↓αβWO'v9βπQ¬"J]βO→↓IQπA↓IAεK;∂#/→9↓α&CWMβ&C∃β?63O↔Qπ≠#?Wf!β∃β	I1Eβc∂Iyph)↓↓α↓↓↓α&C∃α6≤→β∪KNc1β≠⊗7∃β≡Kk∃β>)β←'faβWO*β'M↓∪↓βa↓∪↓β';≤C↔M1π≠=βW≡)↓EAc	@4)α↓↓↓↓αβ≠?Iε#K'3bβSπC*qα'→βc∂IyεKMβSOβ↔⊃1ε;⊃βN{Uβπ⊗)β7π↑K;≥β
αRJ]πβ3?Qb↓EI14)↓α↓↓↓↓π;'31ε∪∃βW≡+⊃9α␈##↔K>KO∃↓αaAβ'~βWO↔"qα'→πK?Uβ∂∪∃β7∞[';≥ε	β∪KNc1βS∂β∀4)α↓↓↓↓αβ≠?Iε9α↔F≠↔33}qβ∪KNc3';:β7π∂FK;∃1π##∃βεc?Qβo+OQβ⊗)β?KN+;S↔"βO=β&CπP4R↓↓↓↓α↓↓A1αβ?9β&C∃β∪⊗K3!β&C∃β≡{CK↔∨β?;∪~βS=β
βC?'w!β∂↔w#↔K↔"β?9β&C∃β≠Ns∨↔K_h)↓↓α↓↓↓β∞s⊃↓E∩β↔3␈9βS#.KIβOF{KS'v9βπ∩aβ←'&AβS#*βO#?↔#';≥ε∪πIβ␈∪'↔;&+⊃βπf{;≤4R↓↓↓↓α↓βS#*βaβπFKMβπv!βS#*β∂πK"β↔cS.s∪';8βWC←∂∪⊃βπf{;≥β&C∃βC␈≠'S'6)βeβ∂C'M9h)↓↓α↓↓↓α&C∃β≠␈∪↔∨?Ns≥βππβ3'↔~βS :∞Mε*∧←6.fM⎇bεn≤=εNvT↔"∧X(2∧.L\7'⊗⎇m⊗∨~
|`hR∧∧ααα∧
6∞wL∀∧≡f≡,∩b∧8∃Bε∂D
F.∂>Eb∧Nd
w⊗&↑$π&z
|'&∞≥dπ&F≡4ε␈⊗≤]g&∂M≥vrb
⎇f(h$∧ααα∧∧εo/>Dε≡}n>Vg"∞Mε*π4ε≡∂,Dε&.m≥fO&≥⎇bεNdλ4
∀EhdM8H∃"dJ*ujε≥lBbε≤nF/⊂Q$ααα∧∧αππ-|G.≡≥lrε
¬hE∀bm⊗f*n&}j
λ5αb∞↑6Nvt∞6≡∞LTβ
b≥f"π⎇≡FB∧itε}6n<W"ε}!PRα∧∧ααα∞-w&∂M≥vrb∞Mε*π∞-wε/$
&␈&≡M⊗}r≥f"πMVrε|lg≡/D
V∂J,Rε.nLW⊗.D
⊗w&t
D h$∧ααα∧∧ε6←$λv.v↑,↔&Nlpε
π≡ε/∩∞L↔ε*dλf␈∩nW↔&↑"ε&↑L⊗Ng5Dπ≡∞T
⊗v6t	vr¬HAPRα∧∧ααα,Vf␈ud∧5∪ε∧ε␈/N∞W"ε≡4ε≡.nLW⊗.D↔/&⎇\↔&N<≥FgJD
⊗v&↑Vv&]nBε}d⊗wHQ$ααα∧∧απ⊗}L↔&N⎇dε␈∩
|f7≡↑Dπ6∞N\W~ε]nF/⊗\DεNr∞,W∨ε⎇n6*πMtπ&FT⊗6␈,]V.wM→vv.AQ"αα∧∧ααπ∞-voπN5bh!Q%&FT∞π⊗.<\V&Nlpλ
≥Y[|M\=~;md~<h≡zy9∧
{[≡$
{Xy$=Y4O∀≥~;,T≥~→$∞≤[yn,;#"M≡h≤⎇≡]→9¬d∃~→$∞Y<⎇∧
<h_.=y9λ
≥H_(
M{|λ∞>_<]
≥Yh~↑Y+H
]→;HM{Y(∞O<→#!+Ph
<;≠
%a"C"Hi3⊃3H→1+c!!"B5∂≡→(≥
(≤≠
}λ→Z-L;X;,Uλ→→,l=;≥∧>≥→-nz;{D
<hλJλtλKAQC"Piλ4B(ITB(∩λY1r∃↓QTpp)H"0shH *∩)D∪23
5#"L↓→-,α&⊗Lβ"F⊃3-,!QLB3&VA"La→-,c!&α3-&A"C"A~~~<d{{]∞-{≤h∞M→(_m<X8nL<H⊂→Z⎇2V⊂≥42P:≡x2wj]⊂0qz≥pv6<CE∧yz≠x9P0]⊂:42H2w2≠s⊂2pXt⊂64[2V⊂≡_y∨⊂9]x892\yryP≥2|:εB∧ws⊂≥44yP≤qpv2K⊂$s⊂≥44yP~yP0P∃)+P*_x2V⊂≥42P4→tst:λ4zyzλ12FEαr4{4\tq62H1<P_MU⊂'j~2y;t\pP4jλ4zyzλ12P2~{4ydX62P1≡P~WεB∧j44\P7:vX2y⊂ )q the heiGht and spacifg↓←DAi!JAGQ¬aCGi∃ef~∀%←@→β&CπQβ≡≠π3∃pαO∂πd)↓A↓DiUA¬∧¬↔4≥<q,D→[p→λ:42P≠p¬ssagas,
	which are pl@=i`∪↔ ∧ε∞∨-}7
πMRε⊗}NF}j
x	D∞~→(@4v6WβE	I@_AsOJ↓eKga=]HAo%iPAC1iP↔∨&)1βSF)βK↔≥!β/→¬##∃β≤¬ε∂∩d∞6OVQQ Oπ-yWπ'4λ↔⊗*∞>Wππ,↑7≡9C!!αE(*U, TEXT, AND PADS EAX X= 0,000 MIN X= 0.000 MAX Y= 0.000 MIN Y= 0.000

	This iNformationis cAlculAted Fpkm The pLot file, and does not	α	Include the cabd outline.If any of the numberpεACe∀ACE]=eP↔πfcd4(NcπK∨*aαNR⎇↓βπ;"β∨πQ¬∩B!βNk7↔∪NS↔3Jp4(∀TK→βSFKMβ'~β¬αR∃9βC3␈!βSπε)βS#*β≠?3f{←';8β'Mβ∂≠/↔⊃Ph(4(LzB-(~D⎇∩	XU≥≤_xU~bεFα∧≤λ~%~¬λZ"∧d→hRαDX≠αJRλYd"¬y~DBβH:#rpQ!∃≥$→hdm∀Dλ∩tJd
¬∀|(X5"p↔H∀e∀X_EJ∧y`¬$
λW`hPQ!⊂M&
≡2ππ↑N2εn↑>6∞≡↑4ε}r∞Mε*πL≡ε*π⎇
⊗≡B≡&*πO≡ε. Q!⊂O&t∞FF*
x↑X=≠n$_=
JUh_.D≥~~.4≤≠r-nλ~3D∞~→(∞
≠⎇AQ@∧Dj~2yrP≠p¬ssages are also plotted across the bottom
		gf the Film for identiFication purposeq.
		The dirsT line adgays identifies us, subsequent
		lines should identify the plane number (0 To 4,
		top to bottom) and what it is. End with a blank
∩∪1S]J\4∀~∃∪_As←J↓gaKG%ISKHE2DAαk?∪∃Ph(4(M"fB∃¬A2eα|1α">d*MαRzαε∩⊃¬"=α∩∀J21α$
B∀∀PJ∩⊗∞Ljε1α∧z&:Q∧z-1α|2~N⊗"α↑&2bα
∃α"∩⊗⊃ph(4(M##↔9εc??AεO/'v9βS#*βGW↔∨#'?9Ph(4(MA2eα|1α">d)|4(hP&W;&K1βg␈)βSgε)β+W∨!βK↔'+K98hP&S#*β#?3*βπK∃πβ3π∂.!β?9π##∃β5∪?;Q∧{⊃βSF)β∪KNc1βS∂β∀4(NK9βSF)β?K&+Iβ'rβ←#'≡Aβg?*βSgC.!βS#.i84(hR'	β&C'MβO→β;?"β¬β∪⊗K3!βεc?Q↓Gβπ∪Mε3?Iβ'∪'31εC?3↔~β?;3JI1βSF)β≠?fc?←'v84+G,+OS'}qβ'MεO/↔ ↓#W≠f+GMβ&C'MβM→β¬α%∩UβK.q%h∀Ph(&N\JAαBdzRR&t9α>→∧
21α∧
∩M|hP4(&&C'MβO→β?;eIβGO,3W1β}qβ∂πf≠?7Aε3?Iβ⎇3↔K3∂K';≥πβ3?S~β←'S@βS#∃π≠π7∀hP'Cπ'→84λhR; ?t
FF*∞∞&}?,≥Rπ>≥IBπ∨↑rε␈↑Dπ6∂-≥w/~∞MεNv}4ε∞⊗}↑BεF}tε&∂$λ⊗f}lpεO"
≡2ph)_bπ&Tε≡∂,Dεw.\,Wαπ|≡2ε∂l≥⊗f∞-LRπ>Ybπ&Tπεf}Dε&NL↑2π>↑,Rπ?-≡G&.eDεO Q.v∂~∞↔∨≡\@εNr∞Mε*εm→F*R	_bεv}EBπ&Tε&↑MIw>Nlpλ∞≡9<p~~ww⊂+Zv6⊂1→P0p∪Ked:

↓CARD NUMBEB∨
~∀$∪⊃Ke∀AsO@*βSgC*βS#∃εsW7-⊃β/→∧εFF*8λ.,λ≡;nT≥x;ND≥≠h∞↑y+C!! 20∪λ<szP≥<x2P≤∧cr≡ kr @)kgh@qGd|X↓]↑AGαK⊃β>K3 ",Rε&⎇lRpH!Q$F/,Tππ⊗|}&/∨4	vrπMRε≡≡,BεO4λ
-l~8p.L9C!)[⎇`∞M→(≤∞-y|X-T≥z3
D≥≡4WC"C!λ0p
*Pd⊂&`V⊂,⊂≡H_⊂∞ 00  MIL∧A0@t@`L@@`@A≠¬0A2@t@`L@β↓Aα6Lqαe↓h∧βαsεεhPβ"U
<y(
n;8Y.∞h~;L=≥9→$∞~→(<<Y
}=≠∩-l(_<d∞y;∪∧<h∪
≥Y<k∧∞→>≥¬D→=_eaαE*4→|P6z\z⊂12H1wx4Yr⊂:7H:42P∃)+P(≠0p∞ning sheet Id∧AiQ%fASf↓BA)%\AaY←PXλ4λhRS#↔p∧εO"∞<↔O≠!Q hU	Iu"∧Iyd*λβ"C!(;Y⊂~2y2P≥rP67[x⊂10XuP:7H:42P≤67z⊂→4v2w_vrP8≤5vx:λFE*w≠2yyP≥42P⊃⊃Q⊂7j]8:z⊂≠wr2P≥pyP9Yv2q`4ed, In which case we go to the
'X' prog whiCh runs auTomatically.
MORE PC CARDS -- AFTER PCP

At ComplEtion of plots, the following command should be typed to
generate an FR80 tape:

COPY MTA0:FOO←STANFO.F80[PLT,DRW],<all your F80 files, specifying ppn>
				,STANFO(
pA7!→(1	%/:qGd|~(~∃)↑↓akMG AaCaα+AβS∂β∃β≠⊗{5βπpαbbat"J1β6K3∃1π∪W9α$"n→2∃α"uβ∞s⊃βSOβ∃βSF)β≠'f+;π7(h*bbBqαS#O→β'Mε	βO↔εKπS*βCK??∪π5β⊗+∂πW≡)βS#*βSπC*β7WO"β∃βπ+;∂#,!β'9ε∪';π↔I84*$!β#π~βS#∃ε≠πCπ⊗K3'SJβS-βnOOπ>)↓:∩∀aβ≠'f+@~πMtεn∞<Tπ&∂Z2π&≡Bπ≡
}Vf"m↔ h-.W∨"≤&␈/Dλλ-o(_{mly:5L≤[→(	hh→≤M≥≠~;Lt≠88m
;Y(∨~<h
}Z9;NL=~;meH∃~T≥≥{aQ]~<↑h≠qD
88z
≥Y<h
≡λ~{M}|h_,-⎇=λ≡Y(∃
(∪0h∀≠88m
;Y(¬∞αyrrλ0z⊂!RdεCH, CIRCO(
and VOSTRON companies)( which drills only one boabd at A time, bu@PAoQS
PAGC8~∃gKαc↔∂Qε3K?5π≠↔[↔⊗1β∪⊗K3 "∞=↔V/4∞Vv&↑$π&∂Tε≡}nN&}bDλλ-lλ≥~T⊃6⊂hY⊃∪sD
88z
≥Y#"E∞<y1∧=λ⊂h(⊂h_-lλ∪0H5(≥z
≤zλ~≡h≥~∞,9(→∞-;≠λ
89≤d[|@Mz;Yd∞~≤Y,T_{p_~ryP7Y⊂:42CE17p\2⊂0zλ7w2P≥4rrVλ0s2→5ryP≠7z⊂4_{2P0H30qt[4z<P→5y⊂!Z0s3t[3P29~v6⊂9Z⎇2yP≥w22iβE:0x→P1w`.trol. The MCC machine (the one at CIH
π⊂0AChAαc↔πO IβOπw#Mβ¬β⊃Aβ'v≠!βO∂+πK∀hS∪K'daβ≠K∞k∃β←M#!βSF)β∨∂∪⊃β∂,sS↔K.!β';≡K∪∃β&C∃β≠⊗7∃9¬##∃α-B∞⊗2dz0∩ε\≤6FNlTεv.\N0hWMtεF∂lTπ&FTλ6}␈,M⊗v∂LTε}2∞Mε*ε<]g&/$λl@⊂:42H13py→∪yP9Z7y:4[3P10\⊂12P
_⊗_TK⊂0w2βE:42H92yjλ5s⊂*~2P17Xy2⊂&]yz⊂2↑8∧end alone the positive Y ahis(A$!βCK}kCSM∧3'KO h+≠?⊂βC/S∂#'?9bβπ;⊃π##↔9∧K9βSF)β;↔:β∂??⊗#';π&)βOG≥#↔51ε∂∂↔π#@~ε≥`ε}6n<W"rλλ0hV-|↔⊗'4↔⊗*LV6NlX	∧
;H∃
(≤{n↑Xy(mβy⊂ H↔!a"λ34v"H0yP4_{0w3H:42`)p∧AGK9iKdAα∪∃↓↓αaA%0hSO=β&C∃αbEBbbat2ε%β≡{WK∂*β⊂⊗NLTε6@|H∃
(⊗⊗⊗⊗H:Qλ⊂∪~v2P:\rr⊂3≠y⊂:4→P86']⊂6zy]⊂12FB1ww9]v:2rλ0s2≥42P2~yz0w_rP3)≠vP:4→P1rw≥2y⊂*≠P:42H2r3rH1ww7→qz7iλ9t7i≥4w3@ d¬SMO∃af~∃5kghA	JAM←U]HXAβ∪?W;&+⊃βWαβS :∞Mε*εlX↔⊗/>DεNv=¬BεNl8L\<y1∧↑(∪ml(~0↔_t⊗⊂ [2⊂2w≥2y2rβE0yP≥42P⊃≡⊗_⊃⊂≥7P*"	yP7c→9rz⊂≤97vx≥↔⊂""λ;tv6λ34w0[68	 Ask whether the origin of the
plot is to be marceD. This feAture writeq the string "S: +X→ +Y↑" to UnambiguouSly~∃YKeSMdAiQJ↓G←←e⊃S]Ci∀AgsGQKZAaIKgK]PA←\AQQJAIISYXAQCaJ\4∀∩¬)<A[CW∀ABA%∩P~ε\≤w&∂Tε'⊗⎇TπN␈↑$α<L_prε6≥HW
B∞O↔ε+!Q hT9z¬J∧X¬⊂&πKq5HYTπl,⊂β*MAG,XXS.MAG,XXP&MAG,XXG.MAG111λ]5β∞~∀4⊃/QKβ∪∃βSF)β≠'d)β+πn+@~ε≤,Rπ&Tε∂π∞-wπ⊗≤≡F*εm_↑h≡3nT~_=LT~Y<nD→y;L↑X=→,EA"C!*~→(
}Y→0→λ4yP7≠z⊂4f\5y:0[8⊗⊂ "ut shoulda`∂eKα)β←'&AβS#*β⊂⊗NLTεw∞\,W.h≠p↔λ:42FB860w≠4p∞g↓`∂#↔,εG4_;Y∧;↑(
\αyy`Yp¬s @=\AiQ∀A`∪π∧∧RεOL8	-LKC"AQT∧w`5 sho@UYHAC1`∂=αβλuαε≥H∧∞~→(∧y⊂πc@' fal@∃`
βπv!βCW ∧π&FTλ	M≥→(λd}h≠p↔λ8∧he@4Xλ (α@↓JU3SI→β#P+S≥	How to p¬`↔dλ

(≥z.2P6 )pπiKd4⊂λ (αB"!∀λλ⊂↔\αλ
(hP&↔πα8∞$
~9≥
L(≤p~→x9P &or muddp∩Aαc'SSd∧Rε6\X
↓Q@εE⊂λ⊂⊂!`/mmandpεACE∀AgS]≥YJAYα+S@&↑.2π≡≡Mαε@|H⊂≠Zz47j]⊂1w`.tr`∨X↓←dA[∃iB\AQQJAGα{77πv 4+\∨∩ε⊗Tλ∞8y0∩Y2r⊂ "y any h∂LAβ##∃β4¬vf@≠yz-lnC"AQ@∧b"Pβ	∪≥=	⊗hP%"~⎇""&:8¬⊂JFmx


8π3@)
$	OL@
Aβ1(∩'≤¬vw≤[p⊗βE↓Dj∃βH∞Aβ1)&∪≠∃iB4P0&@$λ∧Q(T⊂3∃
18{p↔≥93v⊗[p¬ta
λλ	    do@∃`∂9∨α@λ
\=→→.↓αAεE∩pε mope than o@9JA←L↓iQJA¬E←mJ↓CaaKαA1β&C↔9β∞c1β←L¬Fbπ<≡FO≡o∀ε≡}]\⊗v"aQ$Nr≥Fbε.X
∧∞~→(∧$Q⊂ #omeand, iF onlY one wire list↓KqSgQbP⊃β&C∃↓
<JJ∀4Tb&NQ∧J⊃`:$
πε↑↑∞Bπ>≥IBε⊗T∞6NO∞λV"pQ!PT≡⎇]V∞vN7 hPβ"BλQ10$U↔αEεB∧E∧ αi`fbH iP⊃⊗ )edSα".

¬
εD	Enter DIP SEB-MODE,∧A'Kα)β;↔G!βCπ>)β≠?⊂β∂?7n;∪MεK9α∩M↓αNV∩j6>∩*p4(Q!PU[N⎇↔⊗*
I↔∨"
≤Cph!~6/"LV&∂]H
∧∞z<Y$
~<⎇∧
9H
M~<h
≡h≥~T≥z<LT≠~<nD≥z~,=λ~<d∞<y1↓Q@9[n$_;≠∧{{;,≥Y≤h∞,<=2.
;Y`∞≥9Y{T≥z4LT≠~<nNkH∃
(@∞⎇<Y(
M<⎇β!!:9	n4_<Y$∧Qλ@≥YλλJλhKC!!"C"@+b5≠l|{→(∞⎇<Y(
M<⎇λ
≤	|kD¬≤⎇z.Lzλ→N
{(⊃∧∞≠h∀λ4≠|H,8zj%a"C"AQ@R(	zHr!Q@04i:nC"A_R3⊃)h31/aQA"B+≥⎇(≠,∨(≥≡.(_ M;→;L≥9(
L9X=-Nλ→>∞L;\z-⎇H~0→H↓≡SkQ∪P0w→⊂↓↑CUh!STCEwyλ 34f→w0vrH∀22s_zv:⊂→|:2w≤tww⊂~yP⊃"∩i⊃∀Wλ*42P→7y6p]⊂7sεB∧pP⊃⊃$i⊃⊂→4v2P≥tv6⊂_2P2l≤60tw→r⊂60]2y↔εB∧ds⊂≡wzP:≡x2P⊃⊃⊂<w]P3rzλ;ty2H64yzλ;tz4λ4r⊂⊃⊃⊃↔⊂$Y⊂<wzH:<x2H⊃↓QεB∧|wzH3rz⊂≥42P;Zy2P6~yz⊂+Zz4⊂$Y⊂⊃(!H↔εEεB∧j42H34v2J9TP \2P92Xp∩⊂9Zsw0vλ70vr\P0y2H1wvx_y2r⊂_w2⊂*~2FE∧]ty2P≠4yz⊂~yP1:Zv:↔εBεE∧`Y:2y⊂≥42P3~v2P7_vrP<[zP6p↑P:<x→P0P6[r:v2H67qp]4ww⊂≥t4qtλ:0ur\FE∧rY32qzλ37y⊂_w<P2~x9P7\⊂84w≤P;t4Xt⊂27H77z⊂_v92pY<P9x→qts<H0FE∧[wr:v→P67qXz4ww⊂,wzH6p|P_v9wP≥<x2P≥0y4pX62P9Yz:4w→yP2w_v7yrYεE∧t[⊂80y→w:42\ryV⊂≤rx0y_z2r⊂_<P1w[vpyWλ)rrP≥42P2[ith N=0 and M=0, and once for location
	1AE4 with N=6 and M=1.
	The file(s) are read, signal names are compared and the
	wire list is built.

εI	Asks:
¬
	FILENAME/

	Same options as reading 'WD' or 'WPC' files, default extensiOn is 'WEQ'.
	This file contains some number of signal names on each line, seperated
	by tabs. The effect of this file is that each line is treated as a wire.
	So you may cause certain wires to be grounded or connected to HI, or even
	connected to other wires. Please note: The card location of the wire list
	you wish to affect should appear with the filename, just like reading a
↓wire liqt.


εU	Asks:

	CARD(NLLN)?	id necessary

	This copies the dips from the defAult wire list (a logic
	wire list), to the other wire list (a pc wire list). The
	locations are used fOr matching.


αN OR βN
↓Asks:

	WIRE LIST TITLE?

	The stpingyou type Will be used on listings involving
	this wire list.	

αL	Asis:

↓CARD (NLLF)?	if necessary

↓This lIsts a wire list onto a f@%YJ\AQQJAI∃ICkYP~∀'/CS↔;≤K?9βLε2α=yDrphαB0-Mλ≤{n∞≤h∪l@⊂72p]⊂:44[3yP0\2P4`.dicated oN
↓dhe wiRe liSt, the best way to @→S]HA=khAo!Ch~∀%iQKr↓CeJA%`
βSzβ7π∂*β?;∃ph(&πwIβW≠v7π⊃π≠'∨;∞cEβπ⊗)β∨'4+9βWvKGW∃εsW7-∪@_h!_
m
8z≡Y(∀∞
;]→,D≤≤Y,<99→,D_↑(∀λHhEa ¬εEd∧`yZβs:

∪π¬%@Q1_	%@q_
,@⊂72`#essary
α
	Thi@LAP↔π↑+@~πMRε6⎇H
}z;Yd∞⎇;;,≡X∧r`38∧⊂∀!Q M∨]]V∂⊗α8
 %pεACYαaβ∪'αβSgC,ε2π<y0∩λ4s⊂ 4his @]SeJAαc'OPhP'S?&3'lpλ∞M→(⊂∩~q32`2ent @	←AbAαsπ7↔~βπ;⊃∧εF␈&≥Dεw∞β8Y.∧¬α	Od∧AgKα≠S'⎇n2π<y0∩∧@

	QNGEL¬⊗J
"⊗⊃αα9∀<@P3∀aQ@εE∧Ue*abQ⊂)dcS f)FB∧¬∀∪∃CGPAα{⊂∩πMW∞(_p⊂]0sw`2i`fAαK@~εM_nL9λ
⎇Y≡(
⎇Y#"A≥yH⊂~~2P70[p¬s @=H	β¬∧εvO⊗Tλ	M≡≥~3L@P:42H1pp∀agory 
∪SLAQSgQK@@9¬##∃β&+⊂⊗∂]H
∧>≥→-nz;sD
<h	jY∀icAQ@εEεBβ&∧`\uyP~
	α	CARD (NLLN$}∪CL↓]KGKMcCe@Hh  (!~FF.d↔=|h⊂∪≠y⊂0@ d¬SIK9C[J\ααS#∃∧#↔π,¬G"ε←∞F.w=_md~8h∧zs∃)eA ¬∧k\αiteS a l@%ciS]≤AMSY∀AoQSα≠!β'~βO?K&+⊃βJβ∪'AεsW7-⊃0∩¬]lF/∩Xλ,=β"B,M<λ≠N]8Y4D
<h∪
≡⎇→9∧∞~→(∞tsw0[9P1`/nnecTe` to eacH pin.
↓At the end od∧AiQ∀AYSgQS]NX↓iQJA∃IOJA
←]]Kα≠S/I∧3';∨/∪@~ε≡,Rεf≡>F. Q!⊗Nr≥GεF≤.FN≡≥Dε␈⊗L↑"ε∞M⎇f*π⎇~FBπMRπ≡≤⎇f∞b9vvv\:F."∞Mrε.≤=αph!Q M&
≡2ππ-≥g'~
}W"πMRε6⎇IF␈>≥lrεNlis@h!Q Ldx1∀$M
K∃∧(_)t%H~	u_Li→D(h!Q HLmz"ε.≤=αε⊗|O∩ε6⎇MF␈>\@ε↔K!Q hP⊃~∧LR∧1∃%MλQ∀DH→Iu(MZ8PM≤_ydb	h∀l(Q!PPH_iwαε\≤6Bπ
≥bε}d&}'∃aPPh!~FF.g!PPh!_4|ThX5$⎇*1PPM	→`L4→HPM≤_ydb	h∀l(Q!PPH_iw∩ε≥MBε≡⎇mf.∨Mz"πε≥n2ph!Q M&
≡2ε∞MMw?~∂≥w*πMtε6Nl@λ
}=λ⊂⊂H9tsw_v⊂70[pP3)≠vP:4→P"'aJ( g !).

~∃@ygSO9CY]C5J|
∀↓←d4P∩@'←FK∂!β∂≠'Mβ4{AβOL;;π⊃∧sπ7∀hP4(&&C↔9β¬∪';S~β∪ ?$λ

=λ⊂~~2P9tYw0v⊂≠0rrVλ:42P~w37i≠pz4g[⊂;t4XtεE∧]wzv2λ12P(≤4w:2Y⊂37`2 that signal i@8@¬_\ααCKπw#@~ε⎇`¬%%∃aP@H!Q ≥_≡6@>nC"AQ@∧a`T ⊂∀&∪α)0≡∪%H	β;,∧6/∨<≡'Hh!Q MεXD<z|gε@

	DAP MR CONNECTLπ$A→=ββ)∪=_	`8Q!P@MMVrπ∞-⊗w≤h⊂∀[33P &or that l@=FAoQ%GPAsα{Uβ←⎇+3⊃βF[∃β>{S@&]`λ
≥@εE∧XPβ&⊂≠4yz4[3W⊂(≤4s:9H7w⊂*∃,WεEβE
εP	A`'α[@≠Pβ"C!↓4r1i@ f⊂'⊂d¬E >4⊂λ$!~FF.βH⊂∩≠p¬s αP fo@HAaQSβ→βO'>sπ1β4¬w$→88m∧_x<LD_⎇0→≤αently re@¬HAS\αp4(Q!P@!2;@⊂_p∧di@QS←\X↓S@→↓βHd`:P3∪πdλ∧''Q ¬C) Lπ$@↑Q∩⊗~IβπC∧∧V∂↔4λ
-d→\[mnα⊂7`&
∪@&C∃βOL∧vv∞βλ⊂↔_vrP "oth @QQJAQ$AC@; ∧εf@⎇h⊂≠→y9t`/ns o@_AaQJ↓`∂'∨v1β←L¬Fbε,QP@!<≤Z-nα2r. Thi@LA`∨?⊗[@~εmxD
λε⊂↓∀⊗⊂0w→⊂β ↔βE

λ∧¬.∪¬`∂/Mβ!P@!α@
	CARD (LN)?	i`A]∃G@↔O≤∧↔/ εEεBα	ThipεAoE%iKfAα	β≠≥H	$Xπq inpu@PA`∪=∧εFF*λ∧⊂d∞≤[p∪H30∂b↓H∂.βY0→_z4w3CE	`%=kiKdαβ⊂⊗Nβ→0→H9t4`#h a`%∀AeKC⊂AErAβ;π>lXD}h≤[n↑→<@⊂≤90∂g8~∀&&C∃β∪,∧f∂.β_
 exte@9`∂'⎇`λ
≡hλUhJHKC!∧¬∀~(π ≤&&C'Mβ?∪'S↔~β¬β∞≠ ~π≥f.b∞⎇↔,8ε4`3t fi@1JAMe=ZACYαaβ@&Tε≡∂,N2εNβC"A≡~→(L9X=-Nα⊂;t\αe`→Sβ≠Q9ααMε*εLX	L≡8ε0∀↓KqiKαs@≡Nβ{@⊂~yP∪a⊂aSWεBαλ
(hP
λ~,V∞≤h⊂⊂H10q`+ panel wi@IJAYSβ≠Qβ←α-↔'→;@⊂≥tz4 βP∞@Q⊃K@≠π,¬G"ε←∞F.w=_maα@
	@%`
↓≡∀
~:α+@⊂⊗wzP -ay now make bachεAaC9KXAYαK@∨&≥lw4≥<p∀[3P∧,λ1wvvXw21WβE

λ∧π∧∪Iβ	&↓α@O¬¬αNA
%→∃1∧∩V@"	ydeJ	→e¬-J4∧4LHYd@1(⊂)@ ∧ @)%)→
A%_
~=`h ⊂L→hB∧⊂∧h⊂⊂βH∂+≥Q&A
∨HA≠β↔%_
:λ→bαpεh&	P#$f⊃Tε~∀4⊂λ (αAPA~Y89∞P0P &ile @=H	βSF)βOπn)β≠|∧[,≡λ_<d(	uhZ)h⊂∪~v2V⊂~4πwe@YKdAI∃HπWdε@hPα90≤≥2p∞s@%←\ASβ→↓<(Z∩:@H∩0~λ40qP≥42P 3ame @∃H≠↔≤εBε@{H⊂~~2P10XuP8 !ne`_Aα@_hαB0⊂H⊂πWEQ' fi@1JAQCLAP∨9∧∧∩ε≡≤∧Y∧∞βtq2H4∧ic@PX	α↔F≠↔CQ∧εFF/,TεO~
mrππ-xλML8εFEα{tr4λ8∧he card↓YP∨∂∂#'?9bβ'Qβ∂βC &≤Xd∞α7P 4he whole @	CGVAββπ;↔bp4(Q!P@ Pb0.uyP~
λ∧⊂∀!_4
∀D¬∧dr↔q⊗NH≠Y,<αyy`!p¬r4Ph ⊂MMVrε≤∧p∃\β fo@HABAMαK3↔l≥V*@H⊂
4→P22`&au`→@ ∧ε/GLXNtp∂n↓Sf@O]→εN\4⊂λ&SF)β∂πα,Bπ∨Xλm≤β0	e@⊂ASfAα3?Wl@λ
≥H⊃⊂≥ty2P≠4yz and P@εAoSβ∪∃β3Lε7"pβ"B*M→(⊂~≥wP;t\αe l@%`∂SM∧∧↔ε*8m↑_8	2Y⊂0w2λ0p∞ @∃`K|∧@⊂≠4yz4[3P4`3
∪@∧ε&}≥8p∩Y↔⊂&pZβ`
A←αs∃βSzβ⊂⊗NβY⊂≠zz⊂ 4he f@=` .≤¬↔λ*42P~w37P→αr`∨Zα∞4PK'MβL¬f≡g\LV"ε≥`λ(hπεEβE
β@ε∪β@≤¬77@εEεBα	CARD  ⊃→8R}∪Sα1β 6\8	.ypp∩y
~∀%)QS@~β∂?7∧∧↔ε/4λBε∞βY~λh≥z.2P6 )pπhACLAS@9∩~@λ_].D~8
 on`→@Jβ∂#↔≤¬71 ¬∧`)d∧A`'|εRεF≤¬P∩H860qYp∧ the ri@≥Q`⊃β&KAβO|∧6@<αz0∪ on the pc card↓H ?!Q O&Tε&O∞4πN␈Tλλ.(≥0→Zw3P )n the hogic d`%¬oS@;8¬b∧∞β_	`/ che@
P∂Mβ&CπP4PKg?U∧¬ε∂6TλM}λ≤⊂→→T¬a`'β≠'>lX	∧8π⊂ )lh	KO¬XAG←αs;↔∂&{@∩π
_D∧hπ⊂*~4yFEαq2P $one @=]P∪@∀λλ,Nα2y a βL veri@→rAQCLAEKKαqβ∪?v)β@>≤Mαε@XπP %p¬e@?↔_4(≤,V≡∂↑8	$∞~→(
tp∞ds h∂LAα+@↔⊗βx\dXπr`.d bi thic chec@,AgSYαaβ∂?v3WO∀hP$∞
ph ⊂HαC"@@!D`yZβs:

∪∨1λA/∪I
A2M~Qα_@∂aQ@∧g"Uβ WIRE @→∪M(A& πphPβ"B*M~8h≡z|hMβy⊂ ! WDC d¬S@3,sπ7∃bβπ;⊃∧¬V∞↑↑4ε
εM~7&NβY`⊂≠pε the changes
λ∧∪EKβ#←π↔p∧π&FTλ
≡⎇≤kD∧∃~~.P4yP→4πr EAH∞Of8~∀→≠@?⊗)α↑⊃PJ⊗bR,r⊃α⊗|"∃α∞|j6ε:%_4(Q!¬@L≤dε∞w∀λλm⎇]_[mD_Z0~≤β he@1HAI←β;9βπ≤¬77@εEεB∧it←CE
	L¬P∨]∧εGOεTλλ$ε(≥≠dεH
≠n⊂6w`2e) l@∃i`∪↔⊂∧ε≡}]\⊗v"∞λnytq6≡P892Xp¬deD by
	a "
 . @)!JA[Kα;'l}2ε@yH⊂~~2yrP_wvvp[29P !pe e@aaP∪πL¬f.α,Vf@⎇nC!↓0(λHDH_=∧∞~→(
L9]⊂≠p¬ans availabl@∀AS@9∧∧FOα∞8
,%8εw`$e only(λABα↓∀∩!Q Nn\≥g4_8 !ilable in↓EP∨S@∧π&@|;-|α2P !nd dip su@λ[[@?&)1β;|εFFNβY`⊂≠p¬ans
∪CYCS@3∞∪3∃β|¬fgJ
_D∞α7p⊂≠wr2WβE
B	?		Pp¬S@;'→βπMDε≡}]\⊗v'4λλ-lλ_ ⊂_90	e@_AIKgα≠@⊗O∞M⊗}r
x	D88p∀αλ
(hR⊂M(Z4L$Yj@M⊗\≤G4~;@⊂≥42P $ip ded¬S@;LεFN}dλ	M≥→(⊂⊂]⊂:42H10∂`)Q←ZA←α1β≠K,∧PhPα"",=|Y+∧8π2 marks phe last↓YP∨
∧εW<αr↔εBα	↓	Now whenevEp∧Ac←β)βC@≤λ	$Xh⊂→]0y2, phe dips
λ	↓	Stay @%\AiQ∀AG←e∀AS@7∞;∃ 2λ≥Fbε}Mε/∩L↔&

_D∞≤[qn8εFEαD@s 2e`
AgQ←eCO∀ASfAα≠3↔π⊗+⊃8∀Ph"λ¬m∩⊗N_HTe ~,Vf.≡8Rε&≡
2ε7-yRε⊗|¬≥
⎇(≠p∪λ1wy2Kα Fo@\AoQK8~∀$HKg?U¬#gC∃¬s
βO&CAβ&C∃β∪OβEβ∨zβπ←πJp4(Q( L$JA⊂L.nLWπ~λHE"ε≤dεf@x9→,EA"C!(B4p*hα@		ApπWfA→←dAB↓H'∪,sπ7∃b↓#∪↔4∧↔.gDλ	/∞α2w9Zww⊂$\β 'DMP' ∩~(∩∩β@&C↔9β,πε.∨↑LW
ε∀
7>∂∧∞W.z∞Mrπ≡≡h	$∞~→(><\Y-nλ_sn#"B!⊃8;8,@rW⊂$Y⊂")eRg⊂4`3 in Prkgreqs$ It is suspEnded
			dur`∪]≤AiQJ↓cCmJ↓C]HAIKgiCIiKH@!kgS]≤A∩N\~6)%∧≠S↔∩h4(⊃⊃↔>∂,N2r∧
x
l↑Y<K∧∞z→3D∞~→(∞≤=Y0∩λ command causes the file to be reopened
			and the appropriate chars skipped to get it back where
			it was. DSKHLD and DSKCON are used by SAVE to get
			around the fact that the swap uuo does a reset.

B	DSKSKP		If no file open, asks for name and opens it.
			Reads to the next line feed echoing
			characters as it goes. Then asks "STOP?".
			If you respond with "y<cr>", then skipping stops and
			control reverts to who ever had it last.
			If you respond with altmode then
			skipping stops and control reverts to tty.
			Anything else causes then next line to be
			printed, skipped, and the prompt repeated.

	DEFPPN		Accepts a p,pn to use when none is specified (input only).

	-DEFPPN		Resets defppn to 0. this is the default.
			the effect of 0 is that it is used for the p,pn
			on input unless you are reading filenames from
			and indirect file. in that case, the p,pn used are
			those of the iNdirect file.

B	CLEAR		This command is equivalent to "↑C START<cr>" except
α			that it doesn't flush DSKIN.

	STATUS		Prints out current program status, like SPACES, REFERENCES,
			PAGE, EXTENT, and default wire ID.

	SPACES		Makes spaces in signal names significant.
			Affects the αI and βI commands only.

	-SPACES		Spaces in signal names are no longer significant
			except when they seperate 2 digits.
			This is the default.

	REFERENCE	This enables the featuRe in 'WL' files which
			cauSes all signal names for a wire to appear
			in eAch alphabetical sorting of each name,
			but only one of them will have the pin
			information printed. All the others will print
			"←←←←← REFERENCE" next to the signal with which
			the pins appear.

	-REFERENCE	Disable references in 'WL' file. Signal names
			appear only once, with the pins.

	IERROR		Enable output of errors on wirelist file input
			to go to a file. When you do αI, βI, εI, and εB
			you are asked for a filename (default extension
			is 'WIE'). This file contains the filename of the
			file being processed and any errors which cannot
			be indicated later. If you respond with <cr> to
			the WIE filename prompt, output will go to TTY
			as if no IERROR command had been done.

	-IERROR		Disable input errors going to file, they will
			go to the TTY instead. This is the default.


	PART		Write a "PARTITION" file, default extension is
			'PAR'. This is the file for input to Wagner's
			partitioning program.

	SIGSUM		Write signal summary listing for entire wire list.
			Default extension is 'WSS'. These files may be
			merged by the program "M.DMP[WL,RPH]" to form a
			master signal summary ('MSS').

	ERRSUM		This writes a file (default extension is 'LES')
			which has each run of some of the categories from
			the wire list summary output. The difference is
			that this is a binary file which goes back into
			D and allows you to flash the runs from each
			error category.

	CONSUM		Write connector pins needed summary* This lists
			signals in same format as SIGSUM but only those
			which need to get from oNe card to another, but
			don't. Default extensiOn is 'WCS'.

	WLSSEL		LIKE βL, EXCEPT THAT YOU ARE ASKED ABOUT EACH
			CATEGORY BEFORE IP IS WRITTEN INTO THA FILE.

↓BSSEL		LIKE BSUM, EXCEPT ASKS ABOQT EACH CATEGORY.

↓MAKALL		ASKS FOR ONE NAME AND POSSIBLE A CARD NAME, THEN
			DOES αL, βL, εL (WRITES 3 FILES).¬

	BMAKALL		LIKE MAKALL, BUT DOES BLIST, AND BSUM.

	UMAKE		WRITES 'UML' FIHE FOR INPUT TO "D" PROGRAM WHICH
			REPLACES ALL EDGE PINS WITH GENERATED "U" PINS.

	STUFF		WRIPES 'STF' FILE WHICH TELLS FOR EACH DIP TYPE ON
			ABOARD WHERE IT IS USED (WHAT LOCATION).

	LPART		WRITES 'PRT' FIHE WHICH TELLS FOR EACH DIP TYPE ON
			A BOARD WHAT ITS PART NUMBER IS AND HOW MANY ARE USED.
~∀%+≠_∩%!eS]QfABAαk?∪Wd)β7παβ≠ ?$
FF*8λ.,λ≡;nT≤y;\⎇Hλ≥≤{c!!""<∞-;]≤d9→y$∞z9{L≥≤h∩-d_[}↑h→P↔\⊂2pqZ⊂80r→42WεB∧DDb→s0zv≥⊂2|:→w9tg[⊂4yP	jff∪CE
	TEST	Asks:
~∀$∩∪πβIλ@Q→8R}∪S_A]KG∃cgCEd~∀4PH$&SFKEβ←⊗KS↔Mε	β∂πα,Bπε↑>F/∩i⊗f*hn⊂(↔∀2z4j	yP9t[zr0z≠y↔εEαD@j4→P22c_zv:→|:2w≤tsw~yP⊃*∀h⊃↔εB∧A∧i∪h¬TE	Asks:
~∀$∩∪πβIλ@A→8R@}∪%H	β;,∧6/∨<≡'Hh!Q HH~MεO~∞-w/&↑4ε∞fD
'.w4	vrπMRπ∨X6N6≤\Bε≡≤,Bε∞l@π&F]aP@H⊃≡π⊗↑LXλl↑h_ 
M<⎇~-lh
→\X=3∞D→>≥]\z0↔[⊂∪kf∀∪TW The
		∪Y%`∂S'v9β'M∧¬FN↑Tλ∩α≥yDrεf≡:FNvtλWF≡↑λ
∧∞~_=∧∞~→(∞
;\c!! "0.,(≠p→→2y2rλ0s2 a psEu`o Z-level is indicatedin an
∩∩%Kqie∧AG←YU[\\~(~∀β51 ~⊗`JπO/≠P4(Q!⊂HL8~$"α	IbJβq_
,@⊂72`#essary

		∪)!SfAe=kiKf↓CYXAIk]fA=\AiQ∀AgaKα≠'π,!β∂πα,Bε∞l@λ∞M→;C!↓ "0_≤5r2`#es alisting (defau@1hAKqQK]gSα{9↓≡<b`∩h+@⊂∃42FEαD@	l@%`∂S'v9β'Mβ!β≠K|i7S=∧¬FO∨M→f/~βH⊃M≡\⎇⊂~yP +T⊂0w2λ!c"εB∧@Dmv2{"[⊂_P !nd Z-leve@0@d\AQQKLAMSO]C1bP⊃αRk3↔[,¬Bβλβ"B!⊃8;Y∧K;⊂∩]2r⊂→∧¬α
	BLIST	↓Write Back Panel wire@1SghX↓IKMCUY`AKβCS↔≠≤K?9βLε2α≤)Dr`HαC"A_Tq3!⊃5|Z.L(_X,=h≤_-l9λ⊂≠Zy2v )pπhAgU[[CedXAgSαk'3π⊂∧π&@h	uiJic"A⊃ ∧s /p∧A]←β∪7π⊃∧εvO⊗]H
.z↔⊂"→q0rf≥⊂2|:→w9t`/n is 'BS'.
~∀%
BJLrP$_≡6@>h→P↔\α a @MSO]C0A]C[∀XAC]⊂AaeS9ifAi!JAeKαqβ?9∧εFF*∞NGJPβ"B!⊃1∩/λitP3	Gβ⊂∀'∪b"aTH'i⊂∨H∀""aJP;w`2hπfAQ∃aJACLASL@	 DAGα{77πv#E(Q!P@M9→U∧dQ⊃∃ >X∧p∀epεAEC
P
βC∞s↔1βLs⊂⊗@|[8.M9{@⊂≠2qri\βari d¬P∨I∧ε'.vβZ0↔→β the
∩∩%	⊗
∧εvO⊗]H
.z⊂8 !ckage kve@HAiQJ↓ECGVαβCπlX¬@∧¬α
	ASIMPLE		Tπ%∪)∃&A'β5
A&t20~∧~4¬≤LX	D*∧9yTlh@∧λU5⊂⊂iidcSαS
			REAL PIN NAMES @∪≤ααB2ε≤)α>→α∩U	αα	∀`$⊃P3(ZhπεEβE""aBi"b Pβ	Writes @∧A%	¬αP↔∂|¬Wε∂M_λML(≥z.2r4i]↔⊂#4\αst,
λ	∪I!JA%⊃βεA[¬giKd↓YSEe¬`eβLε2π⊗\≤BαFm_]X;9$	⊂∧a)⊗U)"!JF@
		autoMaticAlh	`%p∧∧NH≥~T≠~0N0y4P~yP77]⊂37`5nd$ @e←jACIJ~∧∩%CgWKα!β≠∨⊂∧π&FTλ6␈↔,X7"εm_]X;9%d∀Y<n
{Y⊂≥tz4∂!i∨ ib none
		exiSts. WL then as@-bt4Ph($ε≤
J↓↓Dr229Kx''→εs↔∂↔∨≠πKdhP4($M##↔9εG/M∧∧f␈∩⊂λM;→;L≥9+@
M→(→\X=3∞D→>≥]\z0↔[⊂4yP	acgβKεE∧DRpε terhS]¬i←ef↓CeJA⊃SgG←YKeKH↓S\Ai!JAoSIKYSgPXAs←TAoSY0AEJ~(∩∪Cg-KHAo!KiQKHA←dA9←hAs=jAoC9hAiQ∃ZAS\↓iQJAI	βε↓←kiaβ+Q84PH&S#M→β←KM#↔MβλβC
β≤K⊃βLsS↔K≡{;;↔≤εFN}d	FO∨Dλ
-d≥~→${|\L\⎇β"A⊃9[|M\=λ⊂∪≠y⊂4g≤:z⊂*≠P)"b⊂aWεEβEαE∧Tj) h∀DDi2Xp9P0H∪aY!IP34f→P;t4Xt⊂40\P→⊂!Xy2⊂6≠qpz4[w9P'[⊂2pqZ⊂64w→FE∧DByrx"\0z2rλ1<P H:0qελ9x2qZs<tw→P;t4Xt⊂1p\29P4_{2P:~2ty_0quFB∧DDy]90x⊂_ww72Xz7y9H9z90\82r tkgether.A special fkrmat allows
			each paddle tk be mentioned explicitly so you can stpap
			different paddles in diffeRent @⊃SeKGQS←]f8~∀α∩%β\ACQiK[aPASfA5CIJAQ↑AY←=RACh↓KCGP↓oSeJ↓oQSG AQCf↓BAEC
V~∀∩$∪G←]9KGi←HA←\A%h\A∪_AShA!CfA]<A]C[∀XAY←MJ\A∨QQKeo%gBAM%]H~∀$∩∪iQ∀AgC[∀A]C[∃HAoSIJA←\↓iQJA=iQKd↓GCeH8A∪LA→←k]HαβS#↔p∧π'↔⊃Q HH≤¬≠d
8=_m∧d pins. This allkws errorq to
			be afoided when only one card is plAced.

	CSTRAP		Asks for "CARD nlln" iF necessary (should @	JR\AQQK\A]eSiKL~∀∩∩%BAMS1JAoSQPAiQ∀AIKM¬kYhA∃qiK]MS←\@≥	β(N8A)QJ↓MSYJ↓G←]i¬S]f~(∩∩∪i!JAEC
VAG←9]KGi=dAY←
CiS←9fAoQ%GPACIJAO←QiK\A	rAiC-S]N~(∩∩∪B↓oSYH↓ECGV↓G←]]∃Gi←d↓Me←Z↓iQSf↓GCeH↓C]HA→S]IS9NAiQ∀~∀∩∩%[CiG!S]NA
←]]K
i←dA=\AiQ∀A←iQ∃dAGCIH\A)!SfAC1Y←of↓aeJZ4∀∩∩∪AYCGK5K]hA=LAaS9fAoQ%GPAQ¬mJAE∃K\AaIKmS←UgYrA¬ggSO9KH~∀$∩∪←\↓←]JA=HABAACSdA=LAGCIIf\AQQJAM%YJASLAgkSQCEYJ↓M←dAIKCIS9N~∀∩$∪oSi AiQJE∪!∪9&DAG=[[C]⊂AS\AQQJAIICoS]≤Aae←≤\~∀~(∪1)∃≥(∩∪QQSfA%fAiQ∀A]k[	KdA←_AaCI⊃YKfAQ↑ACgMk[JA5CWJA%hAi↑↓iQJA	CGV~(∩∩∪a¬]KXA→←dAG¬eHAo%iPA]<AY←G¬iS←\8A∪hA%fAS]%iSCY%uKHAQ↑@h\4∀~∀∩51)9(∩∪)!SfAe∃gKif↓iQJA∃qiK]PAi↑@P@QiQ∀AIKM¬kYhR8~∀
∀%!β∂
$∪)QSLACYY=ofAs=jAi↑↓gChAQQJA]U[EKd↓←LAY%]KfAAKdAa¬OJAi<ACggU[J~∀$∩∪oQ∃\A[C-S]NA1SgiS9OfXA%\AGCMJA←kQakhA]SYXA9←hAO<Ai↑A1!(\~(~∀∩[Aβ∂
∩%%KgKQfAaC≥JAYK9OiPAQ↑@jdQiQJ↓IKMCUYhXAQ↑ACY1←nAM=dAga=←YKd↓←d~∀$∩∪←i!KdAQ∃CIS]≥fR\~(~∀∪∨1λ∩∪'∃ifA[=IJAM=dAeK¬IS]NE←YHλAM←e5ChA	%!&]	% AMS1Kf\~(~∀∩[=→λ∩∪
YKCeLA[←I∀AgKh↓ErA∨1λ\~∀4∀∪π0∩∪'KQfAIK→CkYh↓M←dA∃π_AI%afAIUeS]N↓IS`A⊃KMS]%iS←\8~∀~∀$[π_$∪πYK¬efA
_AIK→CkYh8~∀~∀%))_∩%'Kif↓IKMCUYhAM=dA))0AISaLAIke%]NAI%`AIK→S]Si%←\\~(~∀∩[Q)_∩∪
YKCeLA))_↓IKMCUYh\~(~∃]←QJtAi!JAM←1Y←oS9NAG←5[C]ILAoKe∀AOYK¬]KHA→e←ZA⊃SGVOLAMCm=eSiJ↓I←Gk5K]iCQS←\X↓iQJ~(AoXA
←IJA1SgiS9N\AR↓oSYX↓MSYX↓S\AI∃iCSY∃HAIKMGeSaQS←]f↓oQK\↓RAQCYJAiS5J[iC≤X@d↑\j\~∀4∃π∨≠5β≥	&↓
∨$AQ∨ A≠=	
A∨9→2~∀%
∪→L∩∪)Q%fAG←5[C]H↓CgWf↓M←dA∧AGCe⊂AY←G¬iS←\0AC]H↓aeS]Qf@Q←8AiQJ4∀∩∩∪Q)2RAQQJAQ∃CAKd↓S]M←HAM←d↓CYXA=LAiQ∀AMSY∃bAiQ¬hAQCYJAiQ¬h~∧∩$∪QCm∀AiQCPAY←G¬iS←\8~∀
∀%¬
∪→∃&∩∪!I∪∃(A→∪⊃
A1∪'(A→∨$A¬¬π↔!β9_~∀%¬'β≠A→
∩∪]%∪)
O'≠ ≤A
∪→∀A∪≥π1+	∪≥≤Aβ→_↓!/$A¬≥λA≥A!∪≥L~∀β≠Aβ%(∩%≠β↔
↓≠β')∃$A!βI)&A→%'(@Q→%∨~A	βεA
%→&R4∀∪∨+Q'+~∩%/%∪)∀A∨+)A+(A!%≤A)I≠∪≥βQ∪∨≤AM+≠≠βI2~∀∪Q%≠→%'(∪/I∪)
AQ%≠∪9β)∨$↓)'(↓!∨∪≥PA→∪'P~∀∪/%%∂≥⊂∩∪≥¬¬→
A]∪%∪≥≤A∨A≥%∨+≥⊂A!∪≥LA∨≤A⊃∪!&~(∪→≥∂I∪λ∩∪M/∪)π A	ε↓πβ%λ↓)≡Aα↓→))∃$A≥+5¬$A≥%∪λ~(∪%β3Q⊃∨≤%%β3)!∨≤A]∪%
A]%β A1∪'(@	)≡[)<@A
∨I≠β(~(∪%β3→(∩∪%¬3)⊃=≤A/∪I
A/%¬ A→∪M(@E
I∨~[)<DA
∨I≠β(~(~∃π∨5≠β≥	LA
∨$↓¬∨)⊂↓≠∨	L~∀∪¬=β%λ∩%'(A	∨β%λ↓)3!
4∀∪/∪⊃)⊂∩∪M(Aπ!β%βπQ%&AA$A→%≥α@Q→≠$A→%')∪≥≥&R~∀→≠←e∀A/_t%	∪ AM+∧[≠=	

∀4∀~∀⊃∀∩∪q%hAi↑↓)∨ A5∨	
@!G←[[¬]IfA=\Aae∃mS←kLAaCO∀R\~∀4∀⊃∩%'β≠
↓β&@Ea	'π∪8D\~∀4∀⊃∩y→SYK]¬[J|∪%]akh↓IS`A→SYJA%]i↑A%]iKe9CXAgQekGiUeJ\A%LAMS1K]C[∀~∀∩∪%bA←[%iaKH0AYCgPA←]J↓kgKH↓M←dA$A←dA\AG←[5C]HA%fAkg∃H\~∀$∪≥C[∀AgiCIifACL@E	∪A&]	∪A6y→∪	%β%2↓!!≤⎇tD\A	∃MCkYPAKqi∃]gS←8~∀∩∪%fACY]Csf@≥	∪ N8~∀~∀!.yMS1K]C[∀|∪/e%iJAS9iKe]¬XAYSMhAS]Q↑AMS1J\A
%YK]C5JAgC5JACf↓M←dA$\~∀~(⊃≤yM%YK]C5J|∪π!C]OJQWdA)kghAAeS]h↓SLA]<AMSY∃]C[J↓CeNR↓iQJA⊃KMCk1h~∧∩%IS`A→SYK]¬[J\~(~∀↓_qGd|∩%βgWfh~∀
∀$∪
∪→∃≥β≠
|~∀
∀$∪	KM¬kYhA∃qaK]MS←\A%b@O→MλNLAQQSfA5CWKf↓BAYSMiS]N↓←LAC1X~∀∩%IS`A⊃KMS]%iS←]L\~∀~(⊃λyI%a]C[∀|∪	K1KiJA⊃KMS]%iS←\↓←L@y⊃Sa]C5J|\A%L@yI%a]C[∀|ASf↓EYC],~∀α∪e←jAO∃hA		PX∩∀~(⊃ yI%a]C[∀|∪!e%]hAI∃MSMSβ#'?9ε{⊂∩βLM↔εv≥\Srε⎇`¬%%∃aPPh!
#f&≡
f∞nWa∃⊗.l≥V*εM≡απ>≡Mαεv≥\RβfM≡εv∞\Wbb∧≡=7~εmxD
Y=h
l;9+AQ@εE∧∀↑24x≠0vr←αibj⊂∀ i*⊂∪αUMBER STRIJG FMR DIP <DIPNAME>.


λC<dipname>	Copy defiNition h∂L@qISa]¬[J`9ph($ε∂≠'MhhP4(∧Lr⊗]α$JAα:j∃|4Ph($εL∧bεODλλ-NY89∂∀→>~.>≤kλ∂≥⎇(⊂.,(_<m<9∞C!!"B"(→∀Q0(K(⊃6	~u∀k∧
Q0∪λ_q+c!!"B"*M→;@⊂≡wzP \2P0yZrr≥εB∧E∧DS'`b$S!P!gS+"a)Rgc⊂#⊂aj'i∂FEεEαDj42H37y6Xz⊂4iH≡7:vX2y∨⊂≠y⊂⊗7≥vq2i∂↔↑7:[q2y∂⊂*44\FE∧DZyP:4→P9q`!le which ipεACaAYSKH↓iP≥β∞c1β3}∪'l}2ε↑aQ HOMRε}L@ε&O∧F.⊗≥m↔&N⎇`π&@h→y.D≥~→$
Y=`
⎇Y+C!!"B∪'L~<≠L≥9/B)]y~9O∀→→1M≥Z=~-⎇H≠p∪λ≤24x≠0vr←εE∧DRpε no defInition exists for this dip name, it TYPES:¬

			NEW NAME↓# OF PILS?

↓	Answer with <n><cr>.
		IF a defini@QS←\A¬YeKC⊃rAKq%gifX↓isaKLA←kh↓iQJA9k[EKH~∀α∪=HAaS9f\A)!K\ABαβ#↔π&K;≥βfK;∃βLε2π'≡V"ε≥lBε.=
vNvt
↔_h!⊃↔'∂-lV"ε|lbb∧≡Dπ&∞.4π&@h≥~T∀∩3D∧h_{mN;;@≥Yλ≥l≥=≤hm|C"A⊃8(_m⎇;8;LEH∪[nt≡;⎇$
8>(∞O<→.AQA"B'MOO⊂n'B"5∂≡→<h∞M→(~-l[|[,≡~;{D[|H∞
;H∂
gKC"A↔≠OO∞L8OB*O<→4d∞~→(
≥Y[|M\=~3md→[p→λ84w⊂∂7_∞ then tabs to
			the "TYPE" coLumn. You can now change any oR adl
			od∧AiQ∀AICi∧ASiK5bAM←HAiQSLAaS\8A)ca∀@qGdxAi↑~(∩∩βM%YPAS8AiQJ↓eKgh↓←DAi!JAYS9JAoSQPAiQ∀A←YH↓cikM_X∩∀∩$∪)sa∀@yiCλ|Ai↑↓O@↔Q∧εFzπMRεv←∞Bε≡⎇NVnrdλ&∞"iwε@8=β!! "2.P34f≥2y2rλ7zz_w2⊂ /nlq @≥←←HAα#πS¬∧¬↔4→8p∀≠rr↔ To
			deAve a↓G←YK5\Ak]
QCMO∃HXAUUgh@yβ#π	y¬#=βSF)β+↔G 4(⊃⊃⊗≡}LYVrπ⎇~FF←↑@π'O
_L@P0w<]44w3K∧@
	<cr6		Asks dh∂dAα	β+↔:α∩&Bt
6∃9¬K?Uβ≤∧⊗rε]_

<C"A⊃ ∧r`$it anothe@HAIS`↓←dAO∃hAEC
P
βSzα∩&A¬~V	6lz∩*/⊂hPα"".O<~0↔→β <c@H|\
∀%αyGdx∩∪)Sββ↔Mβ∧¬⊗rβM`
f↔H_=.M{8=
≤x;⊂⊗≡P;t2[⊂8wjH88	`!α(4(⊃⊃∪f∨'`λ@4πr @AS\@@d¬crr	_nT→y0~λ5zz o`ACUiW[CQSFA[=IJ
∀$∩∪Er↓isaSαs⊂~βH→E$lxHSrε| π,88p∀~w3P ,ast @AS\\~(∪(yGβ⊃yα⊃d≠@∪@H⊂
↑_y_∞ P<cr>↓&yGdβp4(⊃⊃∀∂/MyV∂&≤8λ-Mα8	 @
←aSKβ→βπ∪bβ∂?3αYVw~∞Mrπ&Tεf.nAP@! "0↔Yα the TYPE, @→∨¬λXAM
P⊃↓¬αM!β∞s⊃αN,~R&>p∧ε≡}LYVw_Q!⊂HO,Z7ε.>M↔6.M∀π>F]`λ∂≥⎇(∃∂≡→(⊂~~2P⊗ .>8tab>	
			command @¬EWmJ8~∀4PH&'→ε3!β&C∃βπ⊗{[∃αbR6>$)β'M∧∧W∂.≡hλ-L;]λ∞MβP≡!\α>.
		LeGal DYPAS are:
		I  inpuT		∪∨@∩@@AAkYXAU`A←kQa`↔PhP$&&~β';C-!β←'&Aβ3?∞!βO#∂∪';≤Mα↑I2αc?Iα2βC?←/⊂4(⊃→rαε}↑Gπ=α"!_qQλ
}H⊃`∧∧→|[n]Yβ"A⊃3uλ∞NX+<nL=→(
}=≤∃.A"3Pd
|H∪D∧λλ≠Mt_{sMl8⎇~-⎇C"B!→ph≠n;H_m⎇≠→8nM|H≠n↑≤≥=↓≠B(λ∧∞→<[-≥X=≠n↓"C"D∧λλλ∧∧λλλ∧∧λλλ∧;⎇(
\>(≤∞,9Z6∧;↑(
|H≥~T_8[nl(≥≡.<h∃m≡~λ∃
(≠⊂∩]82y⊂λ*⊃⊂3≠yεE⊂λ⊂⊂⊂⊂λ⊂⊂⊂⊂λ⊂⊂⊂⊂∃*&⊂'\⊂⊃"Qλ37y⊃ab↔⊗wzP6X|P3 /lhow an "I  or  IS" with  ¬ DA%L~∀@@@@@@@@@@@@AQQSfAAS\AQ¬fAC\↓S]iKI]CXAAkYYk@A←dAAkYYI=o\AC9HAiQUfAI←∃g\Oh4∀@@@@@@@@@@@@AeKEkSeJ↓IeSm∀XA)Q∀AoSe∃YSgi∃dAoS1XAG←5aYCS8ASLA¬\@E∩λA←d@	∪&D~(@@@@@@@@@@@@AaS\↓Sg\OPAG←]9KGiK⊂Ai↑A¬\A←kQakh\A3←j↓[CrA→←YY←\AC\A=kiakP~∀@@@@@@@@@@@@@Q<XA∨ε0A∨(X↓∨ RA]SiP@	DAS_As←j↓oSgP↓i↑A[¬eVASPACfA∧~∀@@@@@@@@@@@@AM1S`[M1←`A←Uiakh8A∪LAQQJA0↓G←[[¬]IfA∃π⊂A←HA))_↓QCmJ↓EKK\4∀@@@@@@@@@@@@AaKIM←e[∃HXAi!JAae∃MSp@	
DA←H@E(D↓SfACMgk[K⊂ACki=[CiS
CYYr8~∀@@@@@@@@@@@@A/%iPA]<AaeK→SpXAQQJAa%\AIK→S]Si%←\ASLA]KkQeCXA]SiPAIKgaK
hAi↑4∀@@@@@@@@@@@@A)) case desperation with
		the dip editor forces you to seek the ultimate documentation.

                The USE column is for comments such as "S1" or "S4" on an ALU
                dip, except that if the USE string begins with "CLK" the wire
                lister will take note of this fact, but it isn't clear what
                it will do about it (TAG, 1/21/75).  PS is an arbitrary
                number which you assign to identify pins that share load.
                Give the same number to all pins that share with each other.
                SECTION is for defining the sections of the dip and for
                specifying equivalent pins in other sections. The section
                information is: <logical pin #>/<section #>{,<subsection #>}.
                The equivalent pins in different sections are identified by
                having equal logical pin numbers. The subsection number is
                used with the section number to describe a dip with more than
                one level of structure, i.e., a 10100 ECL dip with four
                identical sections, and where one pin of each section is tied
                to a common enable line. In this case, the four gates sharing
                the common enable line are considered to be in section 0,
                with a seperate subseCtion number for each gate. Section and
                subsection numbers must be sequentially assigned and must be
                distinct, I,e., a number used as a Section designator must
                not also be used to number a Section. If you're confused,
                look at the definitions od gates like DM88380@b`b@`XAKQF\vA%L∩∀@@@@@@@@@@@@AMiSYX↓G←]MUgKHA¬gVA)=ZA∂C→MWeH0AC]H↓SLAQ∀AG←]→kgKf↓s←jX↓GCYX4∀@@@@@@@@@@@@A%! ACe←U]H@f↓B]J\↓c←[J↓iS[J↓C]HA!CeCgLAQSZ↓EKGCUgJASPOfAC1X~∧@@@@@@@@@@@@A!SfAM¬kYh\~∀→≠←e∀A/_t%⊃←nAQ↑AS]QKeae∃hA/_5OKMKICiKH↓ISYKL~∀
∃%\AiQ%fAaCIht~∀4∀PR∪5KC]f↓←aiS=]CX~(x|∪ge]iCGQSFAK9iSir4∀PBT$`A←d↓[←eJ↓←L~∀qX|βg%]OYJ↓YKii∃d∩∀y8|∩bA=dA[←IJAIS≥Sif~(yGd|%πCee%CGJAIKike8@ZAYαK;↔≠.+⊂4(hP4*π⊗;W7↔w!βS=∩%β?∩∞%α$zAα6|"∃β∂}k7π;'→h4(hQs≠'f+;π7+q↓!↓sc↔cQr↓%↓↓¬YsAyccC9zj↓%↓!αA↓sOdK∂↔Oε+
y↓JQ↓%↓f≠Ix4Ph)
∩M⊃	β≠Nc↔MhhP4)!βc≠'3.sπ7∃r↓!↓9f+cQyαI↓!α[cAy1gβ9zuαI↓!↓B↓sO3N≠↔OC.→y↓%R↓%↓s∨⊃y↓%R↓s↔?3p4(4Ph)sOfK∂↔Oε+
x%SQt%!αA↓s9r↓%↓scq↓!↓fay↓%βc9y↓J↓!↓	B⊃↓!↓fqy↓sf+GOSF9y↓Hh($$JA↓s9r↓s∨K.S↔K&Cπ9yαI↓s1r↓s9YαA↓1↓fay↓ssq↓%)α⊃%	↓JP4(4R⊃!	β∞s⊃↓	J⊃βOS∞s⊃β≠⎇⊃β¬βεK↔;&C↔O'~βCπ'∩p4(∀U##'MεKEβ¬εc'OQε{⊃β≠Lc↔Mβ&yβK↔∞!β≠?⊂↓α%	∧{A↓
*⊃β∂?nkπ;∪~p4(∀U##∃β4KCOQπβπKQ∧{⊃βSF)βO3L≠↔OC,→βπ3f{←MβN{UβSzβGC↔≡K∪eβ&C∀4(HIsπKqsS?π∪π∂-sc?S&{7Kπ≡YysOf{Qh4T3?Iβ∞seβWw≠C↔∂N3'↔⊃ε#'Aβd{∂πSN{;M9∧K9βπ&#'S'}qβS#*β∪'3/≠C↔
∧3?Iβ&C∃β'v#'K↔≥ 4+≠Lc∃β7∂Iβ';≤¬G.εT∩βfggFcsβ≠∂GMβ≠⊂![w9z9≥qz⊂+Z4qt≥tr6⊂_2P:yYr⊂7gλ0w<P→4v2y\2qSyCE0	nthe File Which don't hav@∀AiQK%`A←o8\A)Q∀AeKgPASfA→←dAi!JAga∃GSCX↓G←]gQ`G∂ β'8∀Tε6N>l≥Bεv≥\W
π⎇
⊗≡B∞|Rπ>≥IBε≡≥IBε/∞
&/∨=_mnkH∃
(⊂↔∂≡62i\z40w∂⊂9rz≤β the howep∧⊂∀+⊗{W;⊃ε{⊃β[∞cW/4
FzβM`∂ED≥~→$π≠OG@y2pz→y:40[≥⊂9`%ts the up@AKdAE=k]H\4∃)QJyP⊃ydqyβO-#@~πl≡&N∞-HRβFG`π&@h∂∪GeH∃~T→[p→≠pz⊂ /d∧ABAβ≠'∨;∞aβ+πn(4+←FK∂!β-≠↔Mβ∞qβ↔c¬∪↔OOL¬vrε≤4ε∂~hmM≠⎇|g↓ ¬εEβE~0∪Idπ]CX↓]C@7+p%iihI!↓↓βcπ;e∧∧6F∂$λ	/y<⊂~λ⊃)Q> )* ( [ ,@∃qad|ααu↓∀¬∩Rα∧πF∨∪d¬∩PHαC"GL>≤⊂→∂∧@]≥∂DXf@=` +↔`λ∂D∂→P↔\αh
d|αβq↓s4¬w-αYP≡
λλ
)d3?KT∧ ∨αDY≥≡B↑37`2m3> ( ,  9MieC]≤|@@%Ph  ('Hf␈⊗β(	>		0∀tt∩P@Yα3?KT∧oD∧↑h@⊂∂)j)$Sα@∞|@	xD@R(@P@@d20≥∀T7bαHβ"C!πα37`2m3>		8∧t`4Kc@≡∞=xLL<X←λ>⊂⊗)Yqww2_y<←∂4πp "x@qM←β∪5I@aQ hSβ_	bXww20\αy0≤∩hpp∀¬gβC'\≡'Kr¬HnεLπ⊂≡≤90vp\<X∞ @p@p∪C⊗K7πKKp4(Q'Gπ⊗≥\↔πKβB.Gπ ∧Q(  <e@aadl@λRDAxZ@y@π∪'7π↔Iyβ@D¬2βg∞-⊗n∂/↔bπbλ⊃UBπDπFw.\,Wβ@C"C!π≠|'a".NGQ*h↔∧¬!"C!πα7x→∂∧@]≥∂DWP.λ∃αEεB≡7:vX2y∨∧N≥_
	0-9 | 0-0∩@q]k[E∃`t
∀4∃)QJ@	!∀ λ∞88	~w⊂:4→P894[py<P→2s4g~z4wgλ4p|P_2P92\40q`%d by a "<>  paip∧X~∃	khAs=jA[kMhAGYα{@≡
∞⎇↔&B∞Mε*π<≥V*πM
⊗v:∞⎇↔&B∞⎇εN≡∧∂⊗␈*
x]Y9AQ@εE$Y⊂≡2l≤9∨⊗N→5y6HO⊂:42H≡37`2m3> Expressignis eValuated& Then The thing
in K] is replaced by the I'th pπieS9N@Ao!KeJAYCYkJ↓←L@Yα3?K∃≠qv%%pα'λ∀TIβ3↔∨→βS#∞qβ?I∧+GWπbβS :∂,WεzDλn∧∩(⊂∪\2pz2\⊂:40[⊂:42H7:vq→y⊂7cλ9z94[3yVεB842P≥44w3H4w⊂1≤0qur]9P4yH92x&_qrr≥tz4≠:v6↔βE
If <eXpr>=<form2> the first <fOpi2>expression is eval`+¬iKH\↓∪@→β&C∃β[∞cW∧∀T¬↔
εmyboV↑-rbπMRπ∨N-⊗v:=vw&≥≥bεNd
FF*hmM≠⎇z-lhλ↑odH≤_-≡H~4d∞~→(∞,<⎇3∞A ¬7sλ:42P→|89↔λ'z42\8πisE, the evaluation of the <form3> expressIon after
the "}" iS done afdqo on until onbecomes trua oR the "]" IpεAeK¬GQKH8~∀4TK→↓s/CCIykc≠?Kk→yβSF)βS#Ns∃β'rαfuβM→βK↔εcπ∂↔ βeβ&C∃β∪,≠'7πbβ[π3.(4+∨2βS#∃ε+cCK/≠O'∨pβ←'SBβ3↔π&K;≥βV+C/↔~βπ&LXBπ&t
V∞↑T
FF*
H	-l⎇~λ
|H≥~Q"\Y.>;≥↑=8;∧∞≠h∃
(≠⊂∩[3z4≠s⊂:4→P67w→ryz⊂≥0y4pX62P≡≠∨⊂4gλ:42P→|892\ytwwεEεE∃42P#≠v67kZw3P4\P:42H37y6Xz⊂7cλ0P⊃)U) h⊃λ34v2K⊂4z⊂≥2v69H;t4qZεE80Y262yH7s⊂+Z4qt⊂_py29H0y2P≤z90x≤2r⊂:≠srz4→y≥εEβE=↑9]90x⊂≤x2q←∨∃⊂≡"[s∨εEβEεE≡≤z90xλ9x2qO∧]≥≡B↑1py→⊂9x2X←≡:0X∨≡1p\2⊂9x→q←≡1\63∨εB∧DP⊂λ⊂⊂⊂>α↑80r→62P9\2q←≡≥0q∨≡≤0r26→P9x2X←≡1y≠3∨εEβE≡1p\2⊂9x→q←∧]∞≡D⎇↑_0|←?∂90quO≡9v7]∨εEεB≡80r→62P9\2q←∧N≥≡D↑_py2⊂≤x2q←∂80r2≠2P62]:2y∨βEεE≡_0|←∧B]≥≡DL⊗XZFBεE≡9_qu←∧B]≥≡DO:7x⊂≤0qu←≡↑17z≥7vP9_qu←?βEεE≡≥7x⊂9_qu←∧N≥≡D`KmεEεB≡17z≥7vP9_qu←∧N≥≡D`KmεEεB≡9v7]∨∧D]∞≡DXVM→FEεB≡80r→62P6→z:2y∂∧]≥≡B`VmεBεEεE∀bf`g∃$ai]βEεE∧U42P≡_py2⊂≤x2q←λ1ww9]9:qzλ4yP:\rr⊂4Y⊂:42H10quH9z90\⊂1wg≠2qz7\9FE7Y⊂17z~⊂1py→9P1w\92yx≠w2⊂7[⊂0P7[2Vz7Kww2P_0ytyK⊂*42H≡80r→62P9\2q←⊂~yFE:\rr⊂;Z2w⊂2~s32y→w:⊂4→tst:λ1py2≤P0y2H12tw→P22yXy4q2Y⊂7y⊂≤z90x≤4w3P~yFE3[tw3P≥7P2t]42y⊂≤tr2P≠s⊂0P≤tw3v→P1py→⊂7w⊂→4s32\2w:⊂≤0r26→yWεEβ"{2wλ6wy2H+f≥∧Q2s4w~w3P7→{P24\:<x2\P∀7yλ6wr4Y<tw3H7v2∀CEεE*~2P;t\2v4y]2y⊂6Xtw:0Zw9P:~2P20]0q0yYP7s⊂→4x:<\2yP4[⊂0P9Zw3v2H4:srCE34v→P70vYr⊂"$T)W"$T-b j")+nK⊂⊂"w≥2y4w→P0P7→{P24\:<x2H4yP:→r4wz\VεE7X::yrK⊂0w2λ9wvr]t0z⊂→0w3r\7zyWλ⊂*42\2P0y→P0P7≥, but still, proceed with caution. - ROB 17-Feb-80

To define a new diptype:

1) Make the dips 'non-resident'.  WL won't let you edit resident dips:
	αX-RESI
2) Enter Dip Submode:
	αβD
3) Define your new dip (or edit the old):
	αM<dipname>   etc...
4) When you have defined the diptype to your satisfaction, write out the
   dip definition file:
	αWDIPS.DIP[WL,DRW]
5) Exit Dip Submode:
	αβE
6) Make the dips resident again (which reads in the DIPS.DIP file you just wrote):
	αXRESI
7) Save the 'new version' of the wirelister with the new dip definitions:
	αXSAVE
	WL[1,3]

That's it.  If this seems confusing, it's because it is.  If you have doubts
about what you are doing, consult a wizard before trying anything drastic.

RUNNING MAGGOT

MAGGOT READS MAGTAPE ON WHICHEVER MAG TAPE (0 OR 1) YOU'VE ASSIGNED, AND
SIMULATES THE GERBER PLOTTER PROGRAM PACKAGE AT TRW. (ASKS YOU WHICH ONE IF
YOU'VE BOTH MTA'S ASSIGNED)

HAS OPTIONS FOR OUTPUTTING GRAPHICS TO CALCOMP OR XGP, CONVERTING TO TEXT AND
LISTING ON LPT, READING MAG TAPE CONTINUOUSLY UNTIL ALL PLOTS ARE EXHAUSTED,
AND FLUSHING PLOTTED TEXT TO KEEP FROM REQUIRING TOO LARGE AN XGP PLOT TO FIT
IN CORE AT STANFORD. TYPING "?"<CR> AT THE PROMPT "MODES?" GIVES BRIEF
EXPLANATION OF COIMAND CHOICES. 

THE FIRST TIME ANY SCALE IDENTIFIER IS ENCOUNTERED YOU WILL BE ASKED TO TYPE
ITS HEIGHT. 
RUNNING PDRILL

PDRILL READS PAPER TAPE AND PLOTS X'S ON CALCOMP OR XGP
FOR EACH DRILL HOLE, ALSO LISTS X,Y'S OF HOLES ON
LINE PRINTER

ASKS IF YOU WANT A PLOT
αASKS IF IT IS TO BE ON XGP (OTHERWISE CALCOMP)
ASKS IF YOU WANT A LINE PRINTER LISTING
ASK YOU TO LOAD TAPE BEFORE STARTING

RUNS X PROGRAM AUTOMATICALLY AT END OF TAPE IF XGP MODE WAS SELECTED
RUNNING FR80

ASKS IF YOU WANT A CALCOMP PLOT.
ASKS IF YOU WANT LPT OUTPUT.
ASKS FOR A FILENAME. (DEFAULT EXT IS "F80")
MAKES PLOT AND LISTING IF APPROPRIATE.
HOW TO RUN REF

REF IS A PROGRAM TO GOBBLE DOWN 'WD' FILES
AND PRODUCE A LISTING, ORDERED BY SIGNAL NAME
SHOWING EACH FILE IT IS USED IN AND HOW MANY
TIMES IT IS USED.

THE PROG STARTS BY ASKING:

WD FILENAME?

TO WHICH YOU MAY TYPE EITHER

FILNAM.EXT[P,PN]	DEFAULT EXT IS 'WD'

	OR

@FILNAM.EXT[P,PN]	DEFAULT EXT IS 'DIR'

IF THE "@" CONSTRUCT IS USED, ANOTHER FILENAME IS SCANNED
FROM THE FILE, AND SO ON UNTIL END OF FILE (BLANK LINES ARE
IGNORED).

FILENAMES ARE GOBBLED AND THE FILES READ UNTIL YOU TYPE
A BLANK FILENAME FROM THE TTY.

IT THEN ASKS:

REF FILENAME?

YOU NOW MAY TYPE THE OUTPUT FILENAME (DEFAULT EXT IS 'REF').
IF BLANK NAME IS TYPED, OUTPUT GOES TO THE TTY.
MISCELANEOUS
DRAWING PITFALLS:

1.	LINES WHICH APPEAR TO TOUCH MAY NOT INTERSECT IN THE DATA
	STRUCTURE. TO INSURE CONTINUITY YOU MUST EITHER:
		A. USE THE "-" METHOD TO HAVE A LINE YOU ARE DRAWING
		   INTERSECT A POINT YOU CAN SEE.
		B. USE THE "αA" OR "βA" METHOD TO ATTACH TO A POINT OR
		   LINE RESP.

(IN CASE OF DIFFICULTY, LEARN THE "αB" AND "βB" FUNCTIONS.)

2.	LABELS (LOGICAL NAMES) MAY APPEAR NEAR A WIRE AND NOT BE
	ASSOCIATED WITH IT. TO FORCE ASSOCIATION, YOU MUST:
		A. GET ON THE POINT AT THE END OF THE WIRE AND PLACE THE
		   TEXT THERE. MOVE THE WIRE IF THE TEXT GETS GARBAGED BY
		   SOME NEARBY OBJECT.

3.	USE "XDANGLE" TO FIND MOST ERRORS OF FORM 1 AND 2.

(YOU MIGHT USE THE "αA" FUNCTION TO ATTACH SOME TEXT TO THE NEAREST POINT)

PC CARD LAYOUT RESTRICTIONS (BY MCGUIRE):

	THE  FOLLOWING  LAYOUT  TECHINQUES  ARE  TO   BE   CONSIDERED
MANDITORY UNTIL PROVEN OTHERWISE:

	THE STANDARD STEP SIZE (50 MILS) WILL BE USED IN ALL PC CARDS
EXCEPT FOR SPECIAL PURPOSE ONES. THIS ALLOWS EXACTLY ONE WIRE TO PASS
DIRECTLY BETWEEN TWO PADS.

	WIRES  BETWEEN  PADS  SHOULD BE WITHIN 15 DEGREES OF STRAIGHT
THROUGH TO ALLOW 18 MILS  OF  CLEARANCE  BETWEEN  WIRE  AND  PAD,  30
DEGREES GIVES 15 MILS OF CLEARANCE, STRAIGHT THROUGH GIVES 20 MILS OF
CLEARANCE.

	WIRES BETWEEN PADS ARE ALLOWED ONLY ON THE TOP (DIP IH
'I)∪∨≤$~∃'∪⊃
A∂↓!εAπ¬%↓&A=/∪≥∞↓)≡A)I∨+¬→∀A/∪) A'∨→⊃$A¬I∪	∂∪9∞A∨≤↓)⊃
A	∨))∨4\~∀~(∪'!β
∪≥∞A	)/∃≤A/∪I&A≠¬2A¬
↓)⊃
A5∪≥∪≠U~XA)!β(@A%&@@j@@A≠∪1&\~∃
∨∃'∪⊃$A!¬	&Aβ9λA
∃λA)⊃I∨+∂⊂↓)≡A¬∀@jdA5∪→&A%≤A	∪¬≠)HAβ≥λ↓+∪%LA)≡~)¬
@b@A≠∪→LA/∪	∀@Qβ
Q$AQπ⊃∪≥≤R\~∀4∀∪∪↓αA
∃λA)⊃I∨+∂⊂↓∪&A)<A¬
AA→βπ⊂A¬)]≤AQ/⊗A/%%&AQ⊃
A/%%&~)≠+'(A¬
@↓β(A→∃β'(@D``A≠%→&AβAβ%(A%≤A∨%⊃$A)!β(A)!
@d`↓≠∪→&↓π→βIβ≥π
4∃¬
A5β∪≥)¬∪≥λ↓β%∨+9λA)⊃∀A
⊂A)⊃%=+∂⊂\4∀~∃!1β≥
A⊃'∪∂9β)∪∨9&t~∀4∃∪≤A=%	$↓)≡AβY∨∪λA
∨∃
+M∪∨AQ⊃
A
=→→∨/%≥∞A!1β≥
A⊃'∪∂9β)∪∨9&~∃/%→_A¬∀A+'⊂A∪≤A¬→_A!Aπβ%⊃&t~∀4∀∪!→¬≥
∪+M
~∀~(∩@@`%∂%∨+9λA!→¬≥
\~(∩@@b%
∪%'PA!∨/∃$A!→¬≥
Q+M
A)⊃%&A∪↓∨≥→2↓∨≥
R4∀∩@@H∪'π=≥A!=/$AA→β≥
!+'
AQ⊃∪&A¬≥λ@b↓∪A)]≡A!∨]$A!1β≥&$~∀∩@f∪)⊃%%λA!=/$AA→β≥
8~∀~∃%A'∨5¬∨	dA≥⊃&A≠∨I
A)⊃¬≤@hAA→β≥LXA⊃
↓∪&AπIβ52A¬≥λA'!∨+→λ↓'
~)%!⊂A→∨$A)Iβ)5≥(\4∀~∃a)%∪=$A!→¬≥&B∧BBBB∧B~∀~(∪)⊃
↓'∪	
↓∨A)!
A¬∨¬%λA∪9)≡A/!∪π⊂A⊃∪!&A¬%
@A%≥'%Qλ@A]∪→_@↓¬
~∃EFERED TO AS THE TOP. THE OTHER SIDE WILL BE REFERED TO AS THE OTHER
SIDE.